Duas variáveis no Python têm o mesmo ID, mas não listas ou tuplas
Duas variáveis no Python têm o mesmoid
:
a = 10
b = 10
a is b
>>> True
Se eu pegar duaslist
s:
a = [1, 2, 3]
b = [1, 2, 3]
a is b
>>> False
de acordo comesse link Senderle respondeu que referências de objetos imutáveis têm o mesmo ID e objetos mutáveis, como listas, têm IDs diferentes.
Então agora, de acordo com sua resposta, as tuplas devem ter os mesmos IDs - o que significa:
a = (1, 2, 3)
b = (1, 2, 3)
a is b
>>> False
Idealmente, como as tuplas não são mutáveis, ele deve retornarTrue
, mas está retornandoFalse
!
Qual a explicação?