Verschachteltes If - Else
Teil des Abschnitts Grundlagen der Python-Journey von Coddy. Lektion 23 von 77.
Verschachtelte If-Else-Anweisungen ermöglichen es dir, mehrere Bedingungen zu überprüfen, indem du eine If-Else-Anweisung in eine andere einfügst. Du kannst einen if-Block innerhalb eines else-Blocks verschachteln. Dies ist ein gängiges und gültiges Muster in Python.
Erstelle eine einfache if-else-Anweisung:
age = 18
title = "None"
if age >= 18:
title = "Adult"
else:
title = "Minor"Fügen wir nun eine verschachtelte Bedingung innerhalb des else-Blocks hinzu:
age = 18
title = "None"
allowed_to_drink = False
if age >= 18:
title = "Adult"
else:
title = "Minor"
if age >= 13:
title = "Teenager"
else:
title = "Child"Du kannst auch eine Bedingung innerhalb des if-Blocks verschachteln:
age = 25
title = "None"
allowed_to_drink = False
if age >= 18:
title = "Adult"
if age >= 21:
allowed_to_drink = True
else:
allowed_to_drink = False
else:
title = "Minor"In beiden Beispielen wird die innere if-else-Anweisung nur ausgeführt, wenn die äußere Bedingung, die sie enthält, erfüllt ist. Eine if-Anweisung innerhalb eines else-Blocks (oder innerhalb eines if-Blocks) zu platzieren, ist vollkommen zulässig. Genau das macht sie „verschachtelt“.
Aufgabe
AnfängerSchreibe ein Programm, das anhand des Alters und der elterlichen Begleitung bestimmt, ob jemand für einen Film zugelassen ist.
Gegebener Code (nicht ändern):
- Eine Variable
ageist definiert und erhält einen Wert aus der Eingabe. - Eine Variable
with_parentist definiert und erhält einen booleschen Wert. Sie istTrue, wenn die Eingabe"true"lautet, oderFalse, wenn die Eingabe"false"lautet. - Eine Variable
messageist mit dem Wert"None"definiert.
Deine Aufgabe:
Verwende verschachtelte if-else-Anweisungen, um die Variable message auf eine der folgenden Zeichenketten zu setzen:
- Wenn das Alter 18 oder höher ist, setze
messageauf"You can watch any movie". - Wenn das Alter unter 18 liegt:
- Wenn
with_parentTrueist, setzemessageauf"You can watch PG-13 movies". - Wenn
with_parentFalseist, setzemessageauf"You can only watch G-rated movies".
- Wenn
Wichtig: Da with_parent bereits ein boolescher Wert ist, prüfe ihn direkt (z. B. if with_parent:): Vergleiche ihn nicht mit einer Zeichenkette wie "true" oder "True".
Wichtig: Die Zeichenketten müssen exakt übereinstimmen, einschließlich Groß- und Kleinschreibung sowie Satzzeichen. Verwende beispielsweise "PG-13 movies" (kleines 'm') und nicht "PG-13 Movies".
Probier es selbst
# Hole das Alter als Ganzzahl
age = int(input())
# Hole die elterliche Begleitung als Boolean (True/False)
with_parent = input() == "true"
# Deklariere eine Variable namens message mit "None"
message = "None"
# Schreibe deinen verschachtelten if-else-Code hier
# Ändere nichts unterhalb dieser Zeile
print(message)Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – Einfache LogikLogische Operatoren Teil 3Logische Operatoren Teil 42Variablen
ZahlenStringsBooleanBenennungskonventionenLeere VariablenRückblick - Variablen initialisieren5Entscheidungsfindung
If-AnweisungIf - ElseWiederholung - Einfacher TaschenrechnerVerschachteltes If - Else8Schleifen
For-SchleifeWhile-SchleifeBreakContinueWiederholung - FakultätDie Range-FunktionVerschachtelte SchleifeWiederholung - Dynamische Eingabe3Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische AbkürzungenWiederholung – Einfache MathematikVergleichsoperatoren6Grundlagen Ein- und Ausgabe
AusgabeAusgabe mit VariablenEingabeTypumwandlungWiederholung - Bis 120Wiederholung - Wahr oder Falsch9Funktionen
Funktion deklarierenArgumenteRückgabeWiederholung - Sigma-FunktionWiederholung - ValidierungsfunktionStandardwerte12Iterieren über Sequenzen
Iterieren über ElementeDie Enumerate-FunktionIterieren über Strings Teil 1Iterieren über Strings Teil 2Übe selbstständig: Online-Python-Compiler