Следующее имеет смысл для меня:
>>> [] is []
False
Учитывая, что списки изменяемы, я бы ожидал, что []
будет новым пустым объектом списка каждый раз, когда он появится в выражении. Однако, используя это объяснение, меня удивляет следующее:
id([]) == id([])
True
Почему? Какое объяснение?