Heim >Backend-Entwicklung >Python-Tutorial >Warum der Ausdruck „in [1,0] == True' als falsch ausgewertet wird
Der Grund, warum das Ausführungsergebnis des Ausdrucks „in [1,0] == True“ falsch ist: [==] im Ausdruck ist äquivalent zu und, das heißt [(1 in [1 , 0]) und ([1, 0] == True)].
Warum ist das Ausführungsergebnis von in [1,0] == True False?
Führen Sie dies in Python aus und finden Sie:
>>> 1 in [1,0] == True # This is strangeFalse >>> False
Python wendet hier tatsächlich die Verkettung von Vergleichsoperatoren an. Der Ausdruck wird als
(1 in [1, 0]) and ([1, 0] == True)
übersetzt, was offensichtlich falsch ist.
Dies funktioniert auch für Ausdrücke wie
a < b < c
, was übersetzt
(a < b) and (b < c)bedeutet
Das obige ist der detaillierte Inhalt vonWarum der Ausdruck „in [1,0] == True' als falsch ausgewertet wird. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!