程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2024-11(2)

Python练手例子(7)

发布于2019-08-07 15:22     阅读(709)     评论(0)     点赞(4)     收藏(5)


37、对10个数进行排序。

程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。

#python 3.7

if __name__ == '__main__':
    N = 10
    print('请输入10个数字:\n')
    l = []
    print
    for i in range(N):
        l.append(int(input('请输入一个数字:\n')))
    print
    for i in range(N):
        print(l[i])
    print

    #排列10个数字
    for i in range(N - 1):
        min = i
        for j in range(i + 1, N):
            if l[min] > l[j] : min = j
        l[i], l[min] = l[min], l[i]
    print('排列之后:')
    for i in range(N):
        print(l[i])

 

38、求一个3*3矩阵主对角线元素之和。

程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。

#python 3.7

if __name__ == '__main__':
    a = []
    sum = 0.0
    for i in range(3):
        a.append([])
        for j in range(3):
            a[i].append(float(input('input num:\n')))
    for i in range(3):
        sum += a[i][i]
    print(sum)

 

39、有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。

程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。

#python 3.7

if __name__ == '__main__':
    #加入0作为占位符
    a = [1, 4, 6, 9, 13, 16, 19, 28, 40, 100, 0]
    print('原始列表:')
    for i in range(len(a)):
        print(a[i], end = ' ')
    number = int(input('\n插入一个数字:\n'))
    end = a[9]
    if number > end:
        a[10] = end
    else:
        for i in range(10):
            if a[i] > number:
                temp1 = a[i]
                a[i] = number
                for j in range(i + 1, 11):
                    temp2 = a[j]
                    a[j] = temp1
                    temp1 = temp2
                break
    print('排序后列表:')
    for i in range(11):
        print(a[i], end = ' ')

注:在Python3.x中,print(a[i], end = ' ')可以让数字不换行

 

40、将一个数组逆序输出。

程序分析:用第一个与最后一个交换。

#python 3.7

if __name__ == '__main__':
    a = [9, 6, 5, 4, 1]
    N = len(a)
    print(a)
    for i in range(int(len(a) / 2)):
        a[i], a[N - i - 1] = a[N - i - 1], a[i]
    print(a)

 

41、模仿静态变量的用法。


#python 3.7
def varfunc():
    var = 0
    print('var = %d' % var)
    var += 1
if __name__ == '__main__':
    for i in range(3):
        varfunc()

# 类的属性
# 作为类的一个属性
class Static:
    StaticVar = 5
    def varfunc(self):
        self.StaticVar += 1
        print(self.StaticVar)

print(Static.StaticVar)
a = Static()
for i in range(3):
    a.varfunc()

 

42、学习使用auto定义变量的用法。

程序分析:没有auto关键字,使用变量作用域来举例吧。

#python3.7

num = 2
def autofunc():
    num = 1
    print('internal block num = %d' % num)
    num += 1
for i in range(3):
    print('The num = %d' % num)
    num += 1
    autofunc()

 

 

参考资料:

Python 100例



所属网站分类: 技术文章 > 博客

作者:我下面给你吃

链接:https://www.pythonheidong.com/blog/article/11498/600d5a49dea035041f17/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

4 0
收藏该文
已收藏

评论内容:(最多支持255个字符)