为什么此代码两次追加列表?

时间:2019-04-29 05:38:02

标签: python-3.x

我在python3的列表中的列表中创建一个列表,例如[[[], []], [[], []], [[], []]]。 我想在[0][1]列表元素后附加一个数字,例如43。 这就是我的期望 [[[], [43]], [[], []], [[], []]]

但是,我得到了“两个”列表元素并附加了43 这就是我得到的,

[[[43], [43]], [[], []], [[], []]]

谁能告诉我为什么?

以下是代码:

a = [[[]]*2 for i in range(3)]
print(a)
print('============')
a[0][1].append(43)
print(a)

打印结果:

[[[], []], [[], []], [[], []]]
============
[[[43], [43]], [[], []], [[], []]]

我尝试在添加元素之前放置一个元素6,但问题根本没有出现。

代码:

a = [[[6], []], [[], []], [[], []]]
print(a)
print('============')
a[0][1].append(43)
print(a)

打印结果:

[[[6], []], [[], []], [[], []]]
============
[[[6], [43]], [[], []], [[], []]]

0 个答案:

没有答案