python 中的矩阵(列表)

Matrix (list) in python

我想根据另一个矩阵原始大小 ROW x COLS 创建一个矩阵 ROW x COLS。

ROWS = len(mat)
COLS = len(mat[0])
    
res = [[0 for i in range(ROWS)] for i in range(COLS)]

以上代码不适用于以下极端情况:

mat = [[3],[4],[5],[5],[3]]

我想要的输出是:

[[0],[0],[0],[0],[0]]

然而,我得到的是:

[[0,0,0,0,0]]

如何调整我的代码以适应任何情况? (我不想使用 numpy 或任何其他库)

尝试:

>>> [[0 for i in range(len(mat[0]))] for j in range(len(mat))]
[[0], [0], [0], [0], [0]]

最好对两者都使用不同的循环变量而不是 i:

像这样交换 ROWS 和 COLS:

res = [[0 for i in range(COLS)] for i in range(ROWS)]