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