python生成二维矩阵的方法

  • Post author:
  • Post category: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))  # 参数为元组 (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)

输出为:

在这里插入图片描述

————————————————

版权声明:本文为CSDN博主「su_bao」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/su_bao/article/details/81187482