Две переменные в Python имеют одинаковые id
:
a = 10
b = 10
a is b
>>> True
Если взять два list
s:
a = [1, 2, 3]
b = [1, 2, 3]
a is b
>>> False
в соответствии с этой ссылкой Отправитель ответил, что ссылки на неизменяемые объекты имеют один и тот же идентификатор, а изменяемые объекты, такие как списки, имеют разные идентификаторы.
Итак, теперь, согласно его ответу, кортежи должны иметь одинаковые идентификаторы - значение:
a = (1, 2, 3)
b = (1, 2, 3)
a is b
>>> False
В идеале, поскольку кортежи не изменяются, он должен возвращать True
, но он возвращает False
!
Какое объяснение?