is versus ==

is pregunta si dos nombres son el mismo objeto. == pregunta si sus valores coinciden. Usa is None para un valor que falta.

Sintaxis

a is b
a == b
value is None
  • Dos listas con los mismos elementos son iguales, pero no son el mismo objeto.

Ejemplo

a = []
b = a
c = []
print(a is b)
print(a is c)
print(a == c)

Salida:

True
False
True

Errores comunes

  • Usa == para números y texto. is con un literal puede parecer que funciona y luego fallar.

Practícalo