欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python练手例子(8)

程序员文章站 2022-05-14 09:44:01
43、模仿静态变量(static)另一案例。 程序分析:演示一个python作用域使用方法。 44、两个 3 行 3 列的矩阵,实现其对应位置的数据相加,并返回一个新矩阵: 程序分析:创建一个新的 3 行 3 列的矩阵,使用 for 迭代并取出 X 和 Y 矩阵中对应位置的值,相加后放到新矩阵的对应 ......

43、模仿静态变量(static)另一案例。

程序分析:演示一个python作用域使用方法。

#python3.7

class num:
    nnum = 1
    def inc(self):
        self.nnum += 1
        print('nnum = %d' % self.nnum)

if __name__ == '__main__':
    nnum = 2
    inst = num()
    for i in range(3):
        nnum += 1
        print('the num = %d' % nnum)
        inst.inc()

 

44、两个 3 行 3 列的矩阵,实现其对应位置的数据相加,并返回一个新矩阵:

x = [[12,7,3],
    [4 ,5,6],
    [7 ,8,9]]

y = [[5,8,1],
    [6,7,3],
    [4,5,9]]

程序分析:创建一个新的 3 行 3 列的矩阵,使用 for 迭代并取出 x 和 y 矩阵中对应位置的值,相加后放到新矩阵的对应位置中。

#python3.7

x = [[12, 7, 3],
     [4, 5, 6],
     [7, 8, 9]]

y = [[5, 8, 1],
     [6, 7, 3],
     [4, 5, 9]]

result = [[0, 0, 0],
          [0, 0, 0],
          [0, 0, 0]]

#迭代输出行
for i in range(len(x)):
    #迭代输出列
    for j in range(len(x[0])):
        result[i][j] = x[i][j] + y[i][j]

for r in result:
    print(r)

 

45、统计1到100之和。

#python3.7

tmp = 0
for i in range(1, 101):
    tmp += i
print('the sum is %d' % tmp)

 

46、求输入数字的平方,如果平方运算后小于 50 则退出。

#python3.7

true = 1
false = 0
def sq(x):
    return x * x
print('如果输入的数字小于50,程序将停止运行。')
again = 1
while again:
    num = int(input('请输入一个数字:'))
    print('运算结果为:%d' % (sq(num)))
    if sq(num) >= 50:
        again = true
    else:
        again = false

 

47、两个变量值互换。

#python3.7

def exchange(a, b):
    a, b = b, a
    return(a, b)

if __name__ == '__main__':
    x = 10
    y = 20
    print('x = %d, y = %d' % (x, y))
    x, y = exchange(x, y)
    print('x = %d, y = %d' % (x, y))

 

48、数字比较。

#python3.7

if __name__ == '__main__':
    i = 10
    j = 20
    if i > j:
        print('%d大于%d' % (i, j))
    elif i == j:
        print('%d等于%d' % (i, j))
    elif i < j:
        print('%d小于%d' % (i, j))
    else:
        print('未知')

 

 

参考资料:

python 100例