Diferencia entre == y es operador en Python

El operador de igualdad (==) es un operador de comparación en Python que compara los valores de los operandos y verifica la igualdad de valores. Mientras que el operador ‘ es’ es el operador de identidad que verifica si ambos operandos se refieren al mismo objeto o no (presente en la misma ubicación de memoria).

Ilustración:

# Equality operator
>>> a=10
>>>b=10
>>>a==b
True

>>>a=10     
>>>id(a)
2813000247664   

>>>b=10
2813000247664    # Both a and b is pointing to the same object

>>>a is b
True

>>>c=a       # Here variable a is assigned to new variable c, which holds same object and same memory location

>>> id(c)
2813000247664

>>>a is c     
True

Ejemplo 1:

Python3

# python3 code to 
# illustrate the 
# difference between
# == and is operator
# [] is an empty list
list1 = []
list2 = []
list3=list1
  
if (list1 == list2):
    print("True")
else:
    print("False")
  
if (list1 is list2):
    print("True")
else:
    print("False")
  
if (list1 is list3):
    print("True")
else:    
    print("False")
  
list3 = list3 + list2
  
if (list1 is list3):
    print("True")
else:    
    print("False")

Producción: 

True
False
True
False
  • La salida del primero si la condición es «Verdadera», ya que tanto list1 como list2 son listas vacías.
  • Segundo , si la condición muestra «Falso» porque dos listas vacías están en diferentes ubicaciones de memoria. Por lo tanto, list1 y list2 se refieren a diferentes objetos. Podemos verificarlo con la función id() en python que devuelve la «identidad» de un objeto.
  • La salida del tercero si la condición es «Verdadera», ya que tanto list1 como list3 apuntan al mismo objeto.
  • La salida del cuarto si la condición es «Falsa» porque la concatenación de dos listas siempre produce una nueva lista.

Ejemplo 2

Python3

list1 = []
list2 = []
  
print(id(list1))
print(id(list2))

Producción: 

139877155242696
139877155253640

Esto muestra que list1 y list2 se refieren a diferentes objetos.

Publicación traducida automáticamente

Artículo escrito por Kuldip Kumar 1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *