Bedingungsanweisungen erlauben einem Programm, Entscheidungen zu treffen. Je nach Situation wird ein anderer Codeabschnitt ausgefuehrt. Das macht Programme flexibel und interaktiv.
if, else und elif
Die einfachste Bedingungsanweisung ist if. Sie prueft, ob eine Bedingung wahr (True) ist:
alter = 18
if alter >= 18:
print("Volljaerig")
else:
print("Minderjaehrig")
Mit elif (kurz fuer "else if") koennen mehrere Bedingungen geprueft werden:
note = 85
if note >= 90:
print("Sehr gut")
elif note >= 70:
print("Gut")
elif note >= 50:
print("Ausreichend")
else:
print("Nicht bestanden")
Python verwendet Einrueckungen (Leerzeichen), um zu erkennen, welcher Code zu einem if-Block gehoert. Falsche Einrueckung fuehrt zu Fehlern.
Boolesche Bedingungen
Bedingungen ergeben entweder True (wahr) oder False (falsch). Gaengige Vergleichsoperatoren sind:
| Operator | Bedeutung |
|---|---|
== | gleich |
!= | ungleich |
> | groesser als |
< | kleiner als |
>= | groesser oder gleich |
<= | kleiner oder gleich |
Mit logischen Operatoren koennen Bedingungen verknuepft werden:
if alter >= 16 and hat_ausweis:
print("Zugang erlaubt")
if regen or schnee:
print("Nimm eine Jacke mit!")
Verwechsle nicht = (Zuweisung) mit == (Vergleich). if x = 5 ist ein Fehler; korrekt ist if x == 5.
Verschachtelte Bedingungen
Bedingungen koennen ineinander verschachtelt werden:
eingeloggt = True
ist_admin = False
if eingeloggt:
if ist_admin:
print("Admin-Bereich")
else:
print("Benutzer-Bereich")
else:
print("Bitte einloggen")
Zu viele Verschachtelungen machen Code schwer lesbar. Versuche, Bedingungen mit and/or zu kombinieren oder Teile in Funktionen auszulagern.
Ăbungsaufgaben
Was gibt das Programm aus? x = 10; if x > 5 and x < 20: print('Treffer') else: print('Verfehlt')