<分区>
我在 python 交互式 shell 中尝试了一个非常基本的代码
>>> a=[1,2,3]
>>> id(a)
36194248L
>>> a.append(4)
>>> a
[1, 2, 3, 4]
>>> id(a)
36194248L
>>>
>>> id([1,2,3])
36193288L
>>> id([1,2,3].append(4))
506033800L
>>> id([1,2,3].append(5))
506033800L
>>> id([1,2,3].append(6))
506033800L
问:当我将一个列表分配给一个名为“a”的变量,并尝试附加更多值时,id() 不会改变,但如果我尝试同样的事情而不分配给一个变量,id() 会改变.由于列表是可变的(即允许在同一内存地址进行更改),为什么会出现这种行为?