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.