Я попытался очень простой код в Python интерактивной оболочкиБазовый список операции
>>> 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
Q: Когда я назначить список переменной с именем «а», и попытаться приложить больше значения, идентификатор() не меняется, но если я пытаюсь использовать одно и то же, не присваивая переменной, id() меняет. Поскольку списки являются изменяемыми (т. е. разрешают изменение на одном и том же адресе памяти), почему это поведение наблюдается?