生成带有乘法的列表会产生引用

时间:2013-04-26 00:51:21

标签: python list

当我这样做时:

cand = [ [ 0, 0 ] ] * 4

接下来是:

cand[0][0] = 99

我明白了:

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

乘法只是复制列表引用吗?有没有办法让不同的名单?

1 个答案:

答案 0 :(得分:4)

它创建对同一对象的四个引用。要解决这个问题,您必须创建四个单独的列表:

cand = [[0, 0] for _ in range(4)]