Operador “is”
Em Python, o operador is
é usado para verificar se duas variáveis ou objetos se referem ao mesmo objeto na memória. Ele compara as identidades dos objetos, ou seja, verifica se ambos têm o mesmo endereço de memória. Se as duas variáveis se referirem ao mesmo objeto, o operador is
retorna True
, caso contrário, retorna False
.
Sintaxe:
objeto1 is objeto2
objeto1
: O primeiro objeto que será comparado.objeto2
: O segundo objeto que será comparado.
Exemplo:
a = [1, 2, 3]
b = a
c = [1, 2, 3]
print(a is b) # Output: True (ambos se referem ao mesmo objeto na memória)
print(a is c) # Output: False (mesmo conteúdo, mas objetos diferentes)
Neste exemplo, a
e b
são duas variáveis que apontam para o mesmo objeto (a lista [1, 2, 3]
), enquanto c
é outra variável que aponta para uma lista diferente que tem o mesmo conteúdo. O operador is
retorna True
quando comparando a
e b
porque eles se referem ao mesmo objeto na memória, e False
ao comparar a
e c
porque eles são dois objetos diferentes, apesar de terem o mesmo conteúdo.
É importante notar que o operador is
compara a identidade dos objetos, não o seu valor. Portanto, duas variáveis com o mesmo valor podem não ter a mesma identidade, como mostrado no exemplo.
O uso do operador is
é comum em casos em que queremos comparar se duas variáveis se referem ao mesmo objeto, especialmente em casos de tipos mutáveis, como listas e dicionários. No entanto, para comparar o valor de dois objetos, deve-se usar o operador ==
, que verifica a igualdade dos valores.