【发布时间】:2012-10-21 10:20:59
【问题描述】:
我想在 Python 中创建一个列表列表,但显然这不起作用,因为更改一个数字会改变几个。为什么会这样,我该如何解决?
>>> a = [[0]*3]*4
>>> a[0][0] = 1
>>> a
[[1, 0, 0], [1, 0, 0], [1, 0, 0], [1, 0, 0]]
【问题讨论】:
-
不要使用
*。它制作副本。改用列表推导 -
@MarkTolonen 是的,我已经投票结束这个问题。