Python 2 zeigt ein einzigartiges Verhalten beim Vergleich von Objekten verschiedener Typen, was für viele Programmierer ein interessantes Thema ist. Dieser Artikel befasst sich mit den Details solcher Vergleiche und untersucht die zugrunde liegenden Mechanismen und Variationen basierend auf Implementierung und Sprachversion.
In der Python 2-Sprachreferenz heißt es, dass Objekte verschiedener Typen fehlen Die richtige Vergleichsunterstützung wird willkürlich angeordnet. Insbesondere die Vergleichssyntax „ < „ und „ > Beim Vergleich einer Zeichenfolge mit einer Ganzzahl hat jedoch die Ganzzahl Vorrang. In ähnlicher Weise manifestiert sich der Vergleich zweier nicht numerischer Typen als eine Reihenfolge basierend auf der alphabetischen Reihenfolge ihrer Typnamen.
Zum Beispiel:
Überlegungen zur Implementierungprint "100" < "2" # True print "5" > "9" # False print "100" < 2 # False print 100 < ""2" # True
Python-Versionsunterschiede
>>> '10' > 5 Traceback (most recent call last): File "<pyshell#0>", line 1, in <module> '10' > 5 TypeError: unorderable types: str() > int()
Das obige ist der detaillierte Inhalt vonWie geht Python 2 mit Vergleichen zwischen verschiedenen Datentypen um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!