Python Wenn ... Sonst
Python-Bedingungen und If-Anweisungen
Python unterstützt die üblichen logischen Bedingungen aus der Mathematik:
- Gleich: a == b
- Ungleich: a != b
- Kleiner als: a < b
- Kleiner oder gleich: a <= b
- Größer als: a > b
- Größer oder gleich: a >= b
Diese Bedingungen können auf verschiedene Weise verwendet werden, am häufigsten in "if-Anweisungen" und Schleifen.
Eine "if-Anweisung" wird mit dem if -Schlüsselwort geschrieben.
Beispiel
If-Anweisung:
a = 33
b = 200
if b > a:
print("b is greater than a")
In diesem Beispiel verwenden wir zwei Variablen, a und b , die als Teil der if -Anweisung verwendet werden, um zu testen, ob b größer als a ist . Da a 33 und b 200 ist , wissen wir, dass 200 größer als 33 ist , und so geben wir auf dem Bildschirm aus, dass „b größer als a“ ist.
Vertiefung
Python verlässt sich auf Einrückungen (Leerzeichen am Anfang einer Zeile), um den Bereich im Code zu definieren. Andere Programmiersprachen verwenden zu diesem Zweck oft geschweifte Klammern.
Beispiel
If-Anweisung, ohne Einrückung (wird einen Fehler auslösen):
a = 33
b = 200
if b > a:
print("b is greater than a")
# you will get an error
Elif
Das Schlüsselwort elif ist Pythons Art zu sagen "wenn die vorherigen Bedingungen nicht wahr waren, dann versuchen Sie diese Bedingung".
Beispiel
a = 33
b = 33
if b > a:
print("b is greater than a")
elif a == b:
print("a and b are equal")
In diesem Beispiel ist a gleich b , also ist die erste Bedingung nicht wahr, aber die elfte Bedingung ist wahr, also geben wir auf dem Bildschirm aus, dass "a und b gleich sind".
Anders
Das Schlüsselwort else fängt alles ab, was nicht von den vorhergehenden Bedingungen abgefangen wird.
Beispiel
a = 200
b = 33
if b > a:
print("b is greater than a")
elif a == b:
print("a and b are equal")
else:
print("a is greater than b")
In diesem Beispiel ist a größer als b , also ist die erste Bedingung nicht wahr, auch die elif -Bedingung ist nicht wahr, also gehen wir zur Else -Bedingung und geben auf dem Bildschirm aus, dass "a größer als b" ist.
Sie können auch eine else
ohne
haben elif
:
Beispiel
a = 200
b = 33
if b > a:
print("b is greater than a")
else:
print("b is not greater than a")
Kurze Hand Wenn
Wenn Sie nur eine Anweisung ausführen müssen, können Sie sie in dieselbe Zeile wie die if-Anweisung schreiben.
Beispiel
Eine Zeile if-Anweisung:
if a > b: print("a is greater than b")
Kurze Hand Wenn ... Sonst
Wenn Sie nur eine Anweisung ausführen müssen, eine für if und eine für else, können Sie alles in dieselbe Zeile schreiben:
Beispiel
Eine Zeile if else-Anweisung:
a = 2
b = 330
print("A") if a > b else print("B")
Diese Technik ist als ternäre Operatoren oder bedingte Ausdrücke bekannt .
Sie können auch mehrere else-Anweisungen in derselben Zeile haben:
Beispiel
Eine Zeile if else-Anweisung mit 3 Bedingungen:
a = 330
b = 330
print("A") if a > b else print("=") if a == b else print("B")
Und
Das Schlüsselwort and ist ein logischer Operator und wird verwendet, um bedingte Anweisungen zu kombinieren:
Beispiel
Testen Sie, ob a
größer als
b
ist UND ob c
größer als ist a
:
a = 200
b = 33
c = 500
if a > b and c > a:
print("Both conditions are True")
Oder
Das or
Schlüsselwort ist ein logischer Operator und wird verwendet, um bedingte Anweisungen zu kombinieren:
Beispiel
Testen Sie, ob a
größer ist als
b
, ODER ob a
größer ist als c
:
a = 200
b = 33
c = 500
if a > b or a > c:
print("At least one of the conditions is True")
Verschachteltes Wenn
Sie können if
Anweisungen innerhalb
if
von Anweisungen haben, dies wird als verschachtelte
if
Anweisungen bezeichnet.
Beispiel
x = 41
if x > 10:
print("Above ten,")
if x > 20:
print("and
also above 20!")
else:
print("but not
above 20.")
Die Pass-Anweisung
if
Anweisungen dürfen nicht leer sein, aber wenn Sie aus irgendeinem Grund eine if
Anweisung ohne Inhalt haben, fügen Sie die pass
Anweisung ein, um eine Fehlermeldung zu vermeiden.
Beispiel
a = 33
b = 200
if b > a:
pass