is versus ==

is pyta, czy dwa nazwy to ten sam obiekt. == pyta, czy ich wartości się zgadzają. Używaj is None dla brakującej wartości.

Składnia

a is b
a == b
value is None
  • Dwie listy z tymi samymi elementami są równe, ale to nie ten sam obiekt.

Przykład

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

Wynik:

True
False
True

Typowe błędy

  • Używaj == dla liczb i tekstu. is z literałem może wyglądać, że działa, a potem zawieść.

Ćwicz to