Kursinhalt
Bedingte Anweisungen in Python
Bedingte Anweisungen in Python
Einführung in die If-Elif-Else-Anweisung
Die if-elif-else
-Anweisung ist ein leistungsstarkes Werkzeug in Python, das es Ihnen ermöglicht, mehrere Bedingungen zu überprüfen und verschiedene Codeblöcke auszuführen, basierend darauf, welche Bedingung wahr ist. Sie ist besonders nützlich, wenn Sie mehrere Bedingungen bewerten müssen, aber nur einen Codeblock ausführen möchten.
Wenn Sie zwischen mehreren Bedingungen wählen müssen, wird elif
gegenüber mehreren if
-Anweisungen bevorzugt. Dies liegt daran, dass elif
sicherstellt, dass, sobald eine Bedingung erfüllt ist, die restlichen Bedingungen übersprungen werden, was die Effizienz verbessert. Im Gegensatz dazu führt die Verwendung mehrerer if
-Anweisungen dazu, dass alle Bedingungen unabhängig voneinander bewertet werden, was zu unnötigen Überprüfungen und redundantem Code führen kann.
Lassen Sie uns die Schlafdauer eines Benutzers verfolgen und sie in verschiedene Bereiche kategorisieren. Wir werden überprüfen, ob der Benutzer sein Schlafziel erreicht hat, kurz davor ist, es zu erreichen, oder mehr Ruhe benötigt.
hours_slept = 6 sleep_goal = 8 if hours_slept < 0: print("Sleep hours cannot be negative.") if hours_slept >= sleep_goal: print("Great job! You've met your sleep goal!") if hours_slept >= sleep_goal - 2: print("You're almost there! Keep going, you'll reach your goal soon!") if hours_slept < sleep_goal - 2: print("You need more rest. Try to sleep a bit longer tonight.")
In dieser Version werden alle Bedingungen unabhängig voneinander bewertet, selbst wenn eine Bedingung bereits wahr ist. Dies führt zu redundanten Überprüfungen. Zum Beispiel, wenn der Benutzer sein Ziel bereits erreicht hat, überprüft der Code dennoch, ob er dem Ziel nahe ist oder mehr Ruhe benötigt.
hours_slept = 6 sleep_goal = 8 if hours_slept < 0: print("Sleep hours cannot be negative.") elif hours_slept >= sleep_goal: print("Great job! You've met your sleep goal!") elif hours_slept >= sleep_goal - 2: print("You're almost there! Keep going, you'll reach your goal soon!") else: print("You need more rest. Try to sleep a bit longer tonight.")
Die Verwendung von elif
hilft, den Code lesbarer und effizienter zu machen, da, sobald eine Bedingung erfüllt ist, keine weiteren Bedingungen überprüft werden müssen.
Dieses Diagramm visualisiert den Ablauf einer if-elif-else
Entscheidungsstruktur in Python. Der Prozess beginnt mit der Auswertung der initialen if
-Bedingung:
- Wenn die erste Bedingung wahr ist, wird der Code innerhalb des
if
-Blocks ausgeführt; - Wenn die erste Bedingung falsch ist, wird zur nächsten Bedingung übergegangen, die das
elif
ist. Wenn dieelif
-Bedingung wahr ist, wird der entsprechendeelif
-Block ausgeführt; - Wenn das erste
elif
falsch ist, kann ein weitereselif
überprüft werden, und wenn es wahr ist, wird der jeweilige Codeblock ausgeführt; - Wenn keine der
if
- oderelif
-Bedingungen erfüllt ist (d.h. alle sind falsch), wird der abschließendeelse
-Block ausgeführt, was sicherstellt, dass immer ein Codeblock ausgeführt wird.
Dieser Ablauf stellt sicher, dass nur die erste wahre Bedingung ausgeführt wird, was eine saubere und effiziente Möglichkeit bietet, mehrere Bedingungen zu behandeln. Die if-elif-else
-Struktur vermeidet redundante Überprüfungen, und es wird nur ein Codeblock aus der gesamten Struktur ausgeführt.
1. Was ist der Vorteil der Verwendung von if-elif-else
anstelle mehrerer if
-Anweisungen?
2. Was wird von folgendem Code ausgegeben?
Danke für Ihr Feedback!