Lektion 4: Entscheidungen (if/else)
Bis jetzt läuft dein Code stur von oben nach unten. Mit if bekommt er Verzweigungen: "WENN das gilt, DANN tu dies, SONST das." Genau so steht es später auch im IHK-Pseudocode.
Zwei Dinge sind hier entscheidend. Erstens die Einrückung: Alles, was um vier Leerzeichen eingerückt ist, gehört zum if-Block. Python erzwingt das, andere Sprachen nutzen dafür geschweifte Klammern. Zweitens der Vergleichsoperator >=. Davon gibt es sechs: == (gleich, mit ZWEI Gleichheitszeichen!), != (ungleich), <, >, <= und >=.
Der häufigste Anfängerfehler: = speichert einen Wert, == vergleicht zwei Werte. Wenn du in einer Bedingung nur ein Gleichheitszeichen schreibst, meckert Python sofort.
Mit elif ("else if") prüfst du mehrere Fälle nacheinander. Perfektes Beispiel: der echte IHK-Notenschlüssel. Python geht die Bedingungen von oben nach unten durch und nimmt die erste, die zutrifft:
Bedingungen lassen sich mit and und or kombinieren, und mit not umdrehen:
Übung 4.1: Frag den Nutzer nach einer Zahl und gib aus, ob sie gerade oder ungerade ist. Tipp: Lektion 3, Modulo.
Musterlösung anzeigen
zahl = int(input("Eine Zahl: "))
if zahl % 2 == 0:
print("gerade")
else:
print("ungerade")Übung 4.2: Ein Onlineshop berechnet Versandkosten: unter 20 Euro Bestellwert kosten sie 4,95 Euro, ab 20 Euro noch 1,95 Euro, und ab 50 Euro ist der Versand gratis. Schreib das mit if/elif/else und teste verschiedene Werte.
Musterlösung anzeigen
bestellwert = 35
if bestellwert >= 50:
print("Versand gratis")
elif bestellwert >= 20:
print("Versand: 1.95 Euro")
else:
print("Versand: 4.95 Euro")
# Wichtig: von der GROESSTEN Grenze abwaerts pruefen,
# sonst schnappt sich "ab 20 Euro" auch die 50er-Faelle.