Vom documentation:
Die folgende Tabelle fasst die Rangfolge der Operatoren in Python, von niedrigsten Priorität (least-Bindung) zu höchster Priorität (die meisten Bindung).
lambda
if – else
or
and
not x
in, not in, is, is not, <, <=, >, >=, !=, ==
...
Also, Ihre Frage zu beantworten,
a == b or c
entspricht
(a == b) or (c)
Der Code if gender == "m" or "M"
wird wie folgt funktionieren: Ist gender == 'm"
? Wenn ja, ist das Ergebnis True
. Andernfalls testen Sie die "Wahrheit" von "M"
. Ist "M"
"wahr"? Wenn dies der Fall ist, ist das Ergebnis wahr. Um zu verstehen, wie das funktioniert, sollten Sie wissen, dass alle Objekte eine Wahrhaftigkeit haben. Alle Ganzzahlen ungleich 0, nicht leere Zeichenfolgen und Datenstrukturen sind True
. 0
, 0.0
, ''
, None
, False
, []
, {}
und set()
sind alle False
.
Für weitere Informationen, besuchen Sie How do I test one variable against multiple values?
Frage zeigt keine Forschungsanstrengungen. Eine einfache SO- oder Google-Suche würde die Antwort offenbaren. Bitte lesen und befolgen Sie die Buchungsrichtlinien: Welche Arten von Fragen kann ich https://stackoverflow.com/help/on-topic und How to ask stellen: https://stackoverflow.com/help/how-to-ask. Denken Sie auch daran, minimale, vollständige und überprüfbare Beispiele mit aufzunehmen: https://stackoverflow.com/help/mcve. Klicken Sie dann auf "Bearbeiten", um Ihre Frage zu bearbeiten, damit wir Ihnen helfen können. – SherylHohman