矩阵中索引的行为

时间:2019-07-18 15:25:46

标签: python list

我花了很多时间在列表的不良行为上,让我给你看一个简单的例子:

columns = 3
rows = 4

matrix1 = [[0] * columns] * rows
matrix2 = [[0 for column in range(columns)] for row in range(rows)]

matrix1[2][1] = 5
matrix2[2][1] = 5

print('M1:', matrix1)
print('M2:', matrix2)

输出:

M1: [[0, 5, 0], [0, 5, 0], [0, 5, 0], [0, 5, 0]]
M2: [[0, 0, 0], [0, 0, 0], [0, 5, 0], [0, 0, 0]]

有人可以向我解释为什么M1看起来像这样吗?

0 个答案:

没有答案