Tanto «es» como «==» se utilizan para la comparación de objetos en Python. El operador “==” compara los valores de dos objetos, mientras que “es” comprueba si dos objetos son iguales (en otras palabras, dos referencias al mismo objeto).
# Python program to demonstrate working of # "==" # Two different objects having same values x1 = [10, 20, 30] x2 = [10, 20, 30] # Comparison using "==" operator if x1 == x2: print("Yes") else: print("No")
Producción:
Yes
El operador “==” no nos dice si x1 y x2 realmente se refieren al mismo objeto o no. Usamos «es» para este propósito.
# Python program to demonstrate working of # "is" # Two different objects having same values x1 = [10, 20, 30] x2 = [10, 20, 30] # We get "No" here if x1 is x2: print("Yes") else: print("No") # It creates another reference x3 to same list. x3 = x1 # So we get "Yes" here if x1 is x3: print("Yes") else: print("No") # "==" would also produce yes anyway if x1 == x3: print("Yes") else: print("No")
Producción:
No Yes Yes
x1 = [10, 20, 30] # Here a new list x2 is created using x1 x2 = list(x1) # The "==" operator would produce "Yes" if x1 == x2: print("Yes") else: print("No") # But "is" operator would produce "No" if x1 is x2: print("Yes") else: print("No")
Producción:
Yes No
Conclusión:
- “is” devuelve True si dos variables apuntan al mismo objeto.
- “==” devuelve True si dos variables tienen los mismos valores (o contenido).
Publicación traducida automáticamente
Artículo escrito por Sabya_Samadder y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA