Sobes.tech
Middle

Wat is het verschil tussen is en == in Python?

sobes.tech AI

Antwoord van AI

In Python controleert de operator is of twee variabelen naar hetzelfde object in het geheugen wijzen (d.w.z. vergelijkt de identiteit van de objecten). De operator == controleert de gelijkheid van de waarden van de objecten, dat wil zeggen dat het de methode __eq__ aanroept en de inhoud of de gelijkheidslogica vergelijkt.

Voorbeeld:

a = [1, 2, 3]
b = a
c = [1, 2, 3]

print(a is b)  # True, omdat b naar hetzelfde object verwijst
print(a == b)  # True, de waarden komen overeen

print(a is c)  # False, verschillende objecten
print(a == c)  # True, de lijstwaarden zijn gelijk

Dus, is is een identiteitstest (één object), en == is een inhoudsvergelijking.