您能否请我向我解释这两种说法之间的区别:
l = [[None] * 3] * 4
for i in range(4):
for j in range(3):
if i == 0:
l[i][j] = 0
print(l)
M = [[None] * 3 for _ in range(4)]
for i in range(4):
for j in range(3):
if i == 0:
M[i][j] = 0
print(M)
输出:
[[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]] # first statement
[[0, 0, 0], [None, None, None], [None, None, None], [None, None, None]] # second statement