Bedingte Anweisugen
Inhalt
Bedingte Anweisugen¶
Entscheidungen sind der Kern eines jeden Programmes. Je nach Eingangsdaten liefern Programme verschiedene Ausgangsdaten.
Die Kernanweisung ist mit Sicherheit die Bedingte Anweisung ìf/elif/else. Es gibt wohl nur wenige Programme die auf diese Anweisungen verzichten können.
if / elif / else¶
age = 17
if (age >= 18):
    print("Du bist volljährig!")
else:
    print("Du bist leider zu jung!")
Du bist leider zu jung!
number = 100 # between 0 and 100
if (number < 0):
    print("Die Zahl darf nicht negative sein")
elif (number < 50):
    print(f"2*{number} ist gleich {2*number}")
elif (number <= 100):
    print(f"4*{number} ist gleich {4*number}")
else:
    print(f"Die Zahl {number} ist zu groß.")
4*100 ist gleich 400
Vergleichs-Operatoren¶
Verschiedene Operatoren stehen je nach Aufgabenstellung zur Verfügung.
| Code | Beschreibung | 
|---|---|
| == | gleich | 
| != | ungleich | 
| < | kleiner | 
| > | größer | 
| <= | kleiner oder gleich | 
| >= | größer oder gleich | 
Ternärer If-Operator¶
In vielen Programmiersprachen gibt es einen sogenannten ternärer Operator, oft mit den ? und :.
Bedingung ? Ausdruck1: Ausdruck2
// C-Code
int i1 = 3 > 4 ? 0 : 1;
In Python werden keine neuen Schlüsselwörter eingeführt. Stattdessen werden if und else verwendet.
Ausdruck1 if Bedingung else Ausdruck2
Wir wollen nun ein einfaches Beispiel studieren.
number1 = 300
number2 = 200
# Ternärer if-Operator
number1 if(number1 > number2) else number2
300
number1 = 100
number2 = 200
# Ternärer if-Operator
number1 if(number1 > number2) else number2
200
Der ternäre Operator wird meist mit einer Zuweisung verwendet.
result = number1 if(number1 > number2) else number2
result
200
match / case¶
Mit Python 3.10 würde ein weiteres Konzept eingeführt, die match/case Anweisung.
Bemerkung
Python 3.10 ToDO