我在Python中遇到了令人烦恼的事情,我创建了一个字典,然后创建了第二个字典,它从第一个字体中获取相同的键和值,但是当我修改第一个字典时,第二个字典也会改变,为什么会这样?
示例:
testblock = {
0:1, 1:2, 2:3, 3:4,
4:5, 5:6, 6:7, 7:8,
8:9, 9:10, 10:0, 11:11,
12:13, 13:14, 14:15, 15:12}
t2 = testblock
testblock[2] = 10
testblock
将是第一个字典而t2
是第二个字典,即使我声明了几个与testblock
相同的字典,也就是t3
,{{1等等
当我打电话给他们时,他们都显示了我对t4
答案 0 :(得分:1)
这是因为t2和t1都指向下面的相同字典对象。验证运行id(t2)并在python解释器上运行id(t1)。两者都将返回相同的值。有关更多信息。参考python docs中的python模型。