Den Unterschied zwischen „==“ und „is“ in Python verstehen
Beim Vergleichen von Werten in Python gibt es zwei Gemeinsamkeiten Operatoren: „==“ und „is“. Oft scheint es so, als würden diese Operatoren die gleiche Gleichheitsprüfung durchführen. Es gibt jedoch einen subtilen Unterschied zwischen den beiden hinsichtlich ihrer Bewertung.
Die Operatoren „==" und „is“
Wertgleichheit vs. Objektidentität
Wert Gleichheit:
Beispiel:
a = 10 b = 10 if a == b: print("Yay!") # Will print "Yay!" as 10 == 10
Objektidentität:
Beispiel:
a = [1, 2, 3] b = a if a is b: print("Yay!") # Will print "Yay!" as a and b point to the same list
Ausnahmen von der Regel
a = 100 b = 100 if a is b: print("Yay!") # Will print "Yay!" due to integer caching
a = "a" b = "a" if a is b: print("Yay!") # Will print "Yay!" as string literals are cached b = "aa" if a is b: print("Nay!") # Will not print as b is a different object
Zusammenfassend lässt sich sagen, dass „==“ auf Wertgleichheit prüft, während „is“ auf Objektidentität prüft. Das Verständnis dieser Unterscheidung ist wichtig, um korrekten und effizienten Python-Code zu schreiben.
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen „==' und „is' in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!