Pythons oder und und geben trotz des Booleschen Operators nicht den Booleschen Typ zurück, sondern den verglichenen Wert selbst
>>> True and False
False
>>> 0 or 1
1
or x or y Gibt x zurück, wenn x True ist Gibt y zurück, wenn x False ist
and x and y Gibt y zurück, wenn x True ist Gibt x zurück, wenn x False ist
Also viel verbinden
>>> 0 and 1 or 1 or 0 and 1
1
>>> 0 and 1 or (1 or 0) and 1
1
>>> 0 and (1 or 1) or 0 and 1
0
Oder spielen Die Auswertung erfolgt nach dem Einfügen von Klammern von vorne
>>> ((((0 and 1) or 1) or 0) and 1)
1
>>> (((0 and 1) or (1 or 0)) and 1)
1
>>> (((0 and (1 or 1)) or 0) and 1)
0
Gleich wie
Recommended Posts