Python - 列表列表

时间:2014-06-13 13:56:14

标签: list python-2.7

我正在尝试创建列表列表

A = [[]]*4

打印A,给出

[[],[],[],[]]

然后我做以下

A[0].append(1)

结果出来

[[1], [1], [1], [1]]

我想要以下输出:

[[1],[],[],[]]

有任何建议吗?为什么结果会这样?

2 个答案:

答案 0 :(得分:1)

使用乘法语法可以创建对同一列表的4个引用。引用只是同一个列表的另一个名称。这就是为什么当您向其中一个添加内容并打印结果时,您将对相同列表的引用打印出来。

答案 1 :(得分:0)

A = [[] for x in range(4)]

现在我可以轻松做到

A[0].append(10)

它提供了所需的输出。