Zum Hauptinhalt springen

Die erste if-Bedingung

Warum brauchen wir das?

Bisher liefen deine Programme meist Zeile für Zeile immer gleich.

Aber echte Programme müssen entscheiden:

  • Ist die Punktzahl hoch genug? → „Geschafft!“
  • Ist das Passwort richtig? → hinein
  • Ist das Alter groß genug? → Spiel starten

Dafür gibt es in Python die if-Anweisung (Verzweigung).

Ohne if könntest du nur immer denselben Text anzeigen – egal was passiert.

Definition: Bedingung und if

Definition – Bedingung:
Eine Bedingung ist ein Ausdruck, der wahr (True) oder falsch (False) ist.
Beispiele: punkte >= 10, name == "Luna", 3 < 5.

Definition – if:
if bedeutet: Wenn die Bedingung wahr ist, dann führe diesen eingerückten Block aus.
Ist die Bedingung falsch, wird der Block übersprungen.

Alltagsbild: Ampel

  • Bedingung: „Ist die Ampel grün?“
  • Wenn ja → gehen
  • Wenn nein → stehen bleiben (noch kein else – das kommt bald)

Luna an der Club-Tür

Luna will den Code-Club nur für ab 11 freigeben.

alter = 12
if alter >= 11:
print("Willkommen im Code-Club!")

Py prüft: „Ist 12 größer oder gleich 11? Ja → True → ich drucke die Begrüßung.“

Lily zeigt auf zwei Details, die Anfänger oft vergessen:

  1. den Doppelpunkt : am Ende der if-Zeile
  2. die Einrückung der nächsten Zeile(n)

Buggy entfernt den Doppelpunkt und freut sich über SyntaxError.

Neue Wörter

Bedingungcondition

Ein Ausdruck, der True oder False ergibt – die Frage hinter dem if.

Verzweigungbranch / conditional

Der Programmfluss teilt sich: mancher Code laeuft nur manchmal.

Blockblock

Zusammengehoerende Zeilen, in Python durch Einrueckung markiert.

Einrueckungindentation

Leerzeichen am Zeilenanfang. Zeigt, was zum if gehoert.

Aufbau einer if-Anweisung

if bedingung:
# eingerueckter Block
print("nur wenn True")

Die vier Pflichtteile

  1. das Wort if
  2. eine Bedingung
  3. ein Doppelpunkt :
  4. mindestens eine eingerückte Zeile darunter

Typische Bedingungen (Wiederholung)

punkte >= 10
alter == 12
name != "Buggy"
leben > 0

Vergleiche kennst du schon – jetzt steuern sie echten Code.

Erstes Beispiel – mit und ohne Erfolg

punkte = int(input("Punkte: "))
if punkte >= 10:
print("Super Score!")
print("Programmende")

Fall A: Eingabe 15

  • Bedingung 15 >= 10 → True
  • Ausgabe: Super Score!
  • danach immer: Programmende

Fall B: Eingabe 3

  • Bedingung 3 >= 10 → False
  • Super Score! erscheint nicht
  • trotzdem: Programmende
ZeileEingerückt?Wann läuft sie?
if punkte >= 10:neinimmer (Prüfung)
print("Super Score!")janur wenn True
print("Programmende")neinimmer

Das ist der Kern von if: optionaler Block.

Zweites Beispiel – mehrere Zeilen im Block

alter = 12
if alter >= 11:
print("Willkommen!")
print("Viel Spaß im Club.")
print("Ende der Pruefung")

Beide Begrüßungszeilen gehören zum if, weil sie eingerückt sind.

Was passiert im Computer?

  1. Python wertet die Bedingung aus → True oder False.
  2. Bei True: führe den eingerückten Block aus.
  3. Bei False: überspringe den Block.
  4. Danach weiter mit dem nicht eingerückten Code.

Es gibt noch kein „sonst“ (else) – das kommt in der nächsten Lektion.

Häufige Fehler

FehlerFolge
Doppelpunkt vergessenSyntaxError
Keine EinrückungSyntaxError / unklarer Block
= statt == in der Bedingungoft SyntaxError oder falsche Logik
Alles einrückendann läuft „immer“-Code fälschlich nur im if

Probiere es selbst

Experiment 1

if 5 > 2:
print("Mathe stimmt")

Experiment 2

Name einlesen, nur bei "luna" (nach .lower()) etwas Besonderes drucken.

Experiment 3

Zwei print-Zeilen im if-Block und eine danach.

Experiment 4

Absichtlich Doppelpunkt weglassen und die Fehlermeldung lesen.

Fehlerdetektiv

if 3 > 1
print("ja")
Lösung anzeigen

Der Doppelpunkt fehlt:

if 3 > 1:
print("ja")

Übungen

Level 1 – Entdecken

Wenn 7 == 7, gib "gleich" aus.

Lösung
if 7 == 7:
print("gleich")

Level 2 – Anwenden

Alter einlesen. Ab 12: "Du darfst das Spiel starten."
Danach immer: "Danke fuer deine Angabe."

Lösung
alter = int(input("Alter: "))
if alter >= 12:
print("Du darfst das Spiel starten.")
print("Danke fuer deine Angabe.")

Level 3 – Knobeln

Temperatur einlesen. Bei mehr als 30 Grad zwei Warnzeilen ausgeben.
Unabhängig davon eine Mess-Bestätigung am Ende.

Beispiel
t = int(input("Temperatur: "))
if t > 30:
print("Ganz schoen heiss!")
print("Trink Wasser.")
print("Messung gespeichert.")

Mini-Challenge

„Schatztruhe“: Geheimzahl 7.
User tippt eine Zahl. Nur bei Treffer: "Geoeffnet!"
Erkläre mit eigenen Worten: Was ist eine Bedingung?

Zusammenfassung

  • Eine Bedingung ist wahr oder falsch (True/False).
  • if führt einen Block nur aus, wenn die Bedingung wahr ist.
  • Pflicht: if, Bedingung, :, Einrückung.
  • Nicht eingerückter Code danach läuft immer.
  • if macht Programme situationsabhängig.

Mini-Quiz

Mini-QuizWas braucht eine if-Zeile am Ende?
Mini-QuizWann laeuft der eingerueckte if-Block?
  1. Was ist eine Bedingung?
  2. Warum ist Einrückung in Python wichtig?
  3. Läuft Code nach dem if-Block immer?
  4. Was ist der Unterschied zwischen = und ==?
Lösungen
  1. Ausdruck True/False.
  2. Sie markiert den Block.
  3. Ja, wenn er nicht eingerückt ist.
  4. = speichert, == vergleicht.

if sitzt! Als Nächstes: else – der sonst-Zweig.