Neste artigo vamos ver qual a diferença entre == e o comando is no Python, com exemplos práticos e onde utilizar cada um dos operadores.
Fala programador(a), beleza? Bora aprender mais sobre Python!
Primeiro vamos aprender os conceitos, pois os dois operadores não são similares, cada um tem o seu papel distinto
O operador == serve para testar a igualdade entre dois objetos
Já o operador is vai testar a identidade de um objeto
Ou seja, se um objeto é igual ao outro
Vejamos alguns exemplos práticos:
print(1 == 1) # True print(1 is 1) # True print(1+1 == 2) # True print(1+1 is 2) # True print("a" + "b" == "ab") # True print("a" + "b" is "ab") # True
As respostas serão True para todos os casos, mas e aí? Onde está a diferença?
Você 99.99% das vezes vai receber o mesmo valor, pois se o objeto é igual os valores dele também coincidem
Porém é bom entender esta sutil diferença entre os dois operadores
a = [] b = [] print(a == b) print(a is b)
Veja o exemplo deste caso, o valor é igual, porém não é o mesmo objeto
Estes são os casos que você não vai obter a mesma resposta
E também é o caso que prova que operador is verifica a origem do objeto e não o valor em si
Diferindo um operador do outro 🙂
Conclusão
Neste artigo vimos a diferença entre == e o comando is no Python
Podemos entender que os dois são diferentes, pois o == compara valores e o is a origem do objeto
Então na maioria dos casos teremos valores iguais para as comparações
Só em casos específicos, quando o valor é igual e a origem do objeto é diferente teremos uma diferença na resposta
Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube