Bedingungen mit or
Warum brauchen wir das?
Manchmal gibt es mehrere erlaubte Wege:
- Antwort
"ja"oder"j" - Samstag oder Sonntag
- Schlüssel A oder VIP-Pass
- Menüwahl
"1"oder"start"
Nicht alle Schlüssel müssen passen – einer reicht. Dafür: or.
Definition: or
Definition – or:
orverknüpft zwei Bedingungen.
Das Ergebnis ist True, wenn mindestens eine Seite True ist.
Nur wenn beide False sind, ist das Ganze False.
Alltagsbild: Zwei Türen in denselben Raum. Eine offene Tür genügt.
Wahrheitstabelle
| A | B | A or B |
|---|---|---|
| True | True | True |
| True | False | True |
| False | True | True |
| False | False | False |
Nur die letzte Zeile ist „kein Weg frei“.
Beispiele
tag = input("Tag: ").strip().lower()
if tag == "samstag" or tag == "sonntag":
print("Wochenende – Club-Open-Air!")
else:
print("Wochentag – normale Zeit.")
antwort = input("Mitmachen? ").strip().lower()
if antwort == "ja" or antwort == "j":
print("Super!")
else:
print("Vielleicht spaeter.")
Py: „or ist großzügig – ein Treffer reicht.“
Lily: „Schreibe beide Vergleiche vollständig.“
Buggy schreibt if farbe == "rot" or "blau" und wundert sich.
Wichtiger Anfängerfehler
# FALSCH gedacht:
if farbe == "rot" or "blau":
print("ok")
So meint Python nicht: „farbe ist rot oder blau“.
Ein allein stehender Text wie "blau" gilt in Wahrheitskontexten oft als
„etwas ist da“ – die Bedingung wird leicht immer True.
Richtig:
if farbe == "rot" or farbe == "blau":
print("ok")
Neue Wörter
Logisches Oder: mindestens eine Bedingung True.
Was passiert im Computer?
- Teilbedingungen auswerten.
- Nach or-Tabelle kombinieren.
- True, sobald mindestens eine Seite True ist.
- False nur, wenn alle Seiten False sind.
or ist „großzügiger“ als and – merke dir die Tabellen nebeneinander.
Häufige Irrtümer
| Irrtum | Richtig |
|---|---|
or "blau" ohne Vergleich | volle Bedingung: farbe == "blau" |
| or braucht beide True | nein – eine reicht |
| and und or sind austauschbar | nein – streng vs. großzügig |
| or nur für Texte | auch für Zahlen und bool |
Probiere es selbst
Experiment 1
print(False or True)
print(False or False)
print(3 == 4 or 5 == 5)
Experiment 2 – Menü
wahl = input("Menue (1/start): ").strip().lower()
if wahl == "1" or wahl == "start":
print("Gestartet")
else:
print("Unbekannte Wahl")
Experiment 3 – Farben richtig
farbe = input("Farbe: ").strip().lower()
if farbe == "rot" or farbe == "blau":
print("Club-Farben!")
else:
print("Andere Farbe")
Experiment 4 – Buggy-Falle (zum Nachdenken)
Vergleiche im Kopf: Warum ist die „falsche“ Form gefährlich?
Fehlerdetektiv
farbe = "gruen"
if farbe == "rot" or "blau":
print("ok")
Loesung anzeigen
Vollständige Vergleiche:
if farbe == "rot" or farbe == "blau":
print("ok")
Übungen
Level 1 – Entdecken
Was liefern True or False und False or False?
Loesung
print(True or False) # True
print(False or False) # False
Level 2 – Anwenden
Wochenende: "sa" oder "so" (kurz).
Loesung
tag = input("Tag kurz: ").strip().lower()
if tag == "sa" or tag == "so":
print("Wochenende")
else:
print("Wochentag")
Level 3 – Erweitern
Quiz: richtige Antwort "4" oder "vier".
Loesung
a = input("2+2? ").strip().lower()
if a == "4" or a == "vier":
print("Richtig!")
else:
print("Leider nein.")
Mini-Challenge
Baue einen Club-Check: Eintritt mit Gastkarte oder Mitglieds-ID (zwei
verschiedene richtige Codes).
Erkläre: Wann wählst du or statt and?
Zusammenfassung
or= mindestens eine Seite True.- Nur beide False → False.
- Jede Seite als vollständige Bedingung schreiben.
- Ideal für Alternativen und erlaubte Varianten.
- Wahrheitstabelle merken und mit and vergleichen.
Mini-Quiz
- Reicht eine wahre Seite bei or?
- Was ist falsch an
x == 1 or 2? - Wochenende: and oder or?
Loesungen
- Ja.
2ist kein vollständiger Vergleich mit x.- or (Samstag oder Sonntag).
or sitzt! Als Nächstes: not.