Heim > Artikel > Backend-Entwicklung > Warum wird „(1 in [1,0] == True)“ in Python als „False“ ausgewertet?
Falsche Auswertung von (1 in [1,0] == Wahr)
Im Gegensatz zu einer typischen Programmiersprache wertet Python Ausdrücke mithilfe von Vergleichen aus Operatorverkettung. Im Ausdruck (1 in [1,0] == True) wird die Operation nicht wie erwartet analysiert.
Der Ausdruck wird tatsächlich wie folgt interpretiert:
(1 in [1, 0]) and ([1, 0] == True)
Diese Auswertung schlägt fehl into:
Der Gesamtausdruck also , ergibt Folgendes:
True and False = False
Dieses unerwartete Ergebnis verdeutlicht den Unterschied in der Auswertung von Ausdrücken in Python im Vergleich zu anderen Sprachen. Um Verwirrung zu vermeiden, verwenden Sie Klammern, um die gewünschte Auswertungsreihenfolge anzugeben:
(1 in [1,0]) == True # True
Das obige ist der detaillierte Inhalt vonWarum wird „(1 in [1,0] == True)“ in Python als „False“ ausgewertet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!