Igualdad de variables en Python

May 10 2022
Mostrando diferentes métodos de comparación de objetos en Python.
En nuestra vida útil de programación, nos encontramos con muchos casos en los que necesitamos comparar dos objetos entre sí. Desde comparar dos variables hasta incluso comparar dos funciones e instancias de clase.

En nuestra vida útil de programación, nos encontramos con muchos casos en los que necesitamos comparar dos objetos entre sí. Desde comparar dos variables hasta incluso comparar dos funciones e instancias de clase. Muchos de nosotros usamos el == operador también conocido como operador de igualdad. Otras veces, es posible que haya visto a algún otro programador que usó el isoperador. Bueno, no hay mucho que hablar sobre ambos, pero quería publicar un breve artículo para mostrar la distinción entre los dos, de modo que si usa alguno de ellos nuevamente, al menos tenga una comprensión de lo que hizo.

Foto de Glenn Carstens-Peters en Unsplash

Podemos pensar en comparar una variable de dos maneras fundamentales:
1. Comparando direcciones de memoria
2. Comparando el estado del objeto (datos internos)

Entonces, si desea comparar dos objetos por sus direcciones de memoria, use el is operador también conocido como operador de identidad. Usar el is operador para comparar direcciones de memoria es la forma más rápida de comparar dos objetos. Si la dirección de memoria de dos objetos es la misma, significa que son el mismo objeto. Entonces, hace la comparación entre las dos ubicaciones de memoria que son números enteros.

var_1 = 'Hello'
var_2 = var_1
print(var_1 is var_2)
>>> True

En consecuencia, si desea comparar los datos internos de un objeto, entonces usar el operador de igualdad ==hace el trabajo. Usar el operador de igualdad es más lento que usar el operador de identidad, ya que el operador de igualdad verifica uno por uno. Por ejemplo, si compara dos cadenas, el operador de igualdad pasará por las cadenas y comparará carácter por carácter, lo que está menos optimizado.

a = 'Hello world'
b = 'Hello world'
print(a == b)
>>> True
print(a is b)
>>> False

Más contenido en PlainEnglish.io . Regístrese para recibir nuestro boletín semanal gratuito . Síguenos en Twitter y LinkedIn . Únete a nuestra comunidad Discord .

© Copyright 2021 - 2022 | unogogo.com | All Rights Reserved