我正在尝试编辑列表列表中的元素,但它正在编辑多个元素。
L1 = [[0,0] for count in range(2)]
L2 = [L1 for count in range(2)]
L2[0][0][0] = 5
print(L2)
我期望的是 [[[5, 0], [0, 0]], [[0, 0], [0, 0]]]
但是我得到的是 [[[5, 0], [0, 0]], [[5, 0], [0, 0]]]
看来我正在编辑原来的列表。有人可以解释如何编辑单个元素或设置不会发生这种效果的嵌套列表。
非常感谢
不要重复使用变量:
L2 = [[[0,0] for count in range(2)] for count in range(2)]
然后内部部分
[[0,0] for count in range(2)]
每次都会重新创建为一个新鲜的、单独的列表。