python生成二维矩阵的方法

1、直接用列表生成m行n列的矩阵

m,n = map(int,input().split())
matrix = [[0]*(m)]*(n)

输出为:

这种方式生成的矩阵存在一定的问题,比如,无法给特定位置的元素赋值,例如:

matrix[1][1] = 9

输出为:

可见,第二列的元素全部被赋值为9了

2、采用numpy生成想要维度的矩阵

import numpy as np
x,y = map(int,input().split())
a = np.ones((x+1,y+1))

输出为:

上面的输出特别漂亮,一个完美的矩阵形式输出,下面我们试一下修改特定位置的元素值。

import numpy as np
x,y = map(int,input().split())
a = np.ones((x+1,y+1))
a[1][1] = 9
print(a)

输出为:

可见,我们成功修改了第二行第二列的元素值,因此通过numpy生成的矩阵更具有可操作性。比如下面的操作:

import numpy as np
x,y = map(int,input().split())
a = np.ones((x+1,y+1))
for i in range(1,x+1):
    for j in range(1,y+1):
        a[i][j] = a[i-1][j] + a[i][j-1]
print(a)

输出为:

猜你喜欢

转载自blog.csdn.net/su_bao/article/details/81187482