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例