Exemplo de operadores de identidade Python
Os operadores de identidade comparam as localizações de memória de dois objetos. Existem dois operadores de identidade, conforme explicado abaixo -
Operador | Descrição | Exemplo |
---|---|---|
é | Avalia como verdadeiro se as variáveis em qualquer lado do operador apontam para o mesmo objeto e como falso caso contrário. | x é y, aqui estão os resultados em 1 se id (x) for igual a id (y). |
não é | Avalia como falso se as variáveis em qualquer lado do operador apontam para o mesmo objeto e como verdadeiro caso contrário. | x não é y, aqui não resulta em 1 se id (x) não for igual a id (y). |
Exemplo
#!/usr/bin/python
a = 20
b = 20
if ( a is b ):
print "Line 1 - a and b have same identity"
else:
print "Line 1 - a and b do not have same identity"
if ( id(a) == id(b) ):
print "Line 2 - a and b have same identity"
else:
print "Line 2 - a and b do not have same identity"
b = 30
if ( a is b ):
print "Line 3 - a and b have same identity"
else:
print "Line 3 - a and b do not have same identity"
if ( a is not b ):
print "Line 4 - a and b do not have same identity"
else:
print "Line 4 - a and b have same identity"
Quando você executa o programa acima, ele produz o seguinte resultado -
Line 1 - a and b have same identity
Line 2 - a and b have same identity
Line 3 - a and b do not have same identity
Line 4 - a and b do not have same identity