Python Bedingte Anweisungen meistern: IF, ELSE, ELIF und Switch-ähnliche Logik
Was sind bedingte Anweisungen in Python?
Bedingte Anweisungen ermöglichen einem Programm, verschiedene Codeblöcke basierend auf booleschen Ausdrücken auszuführen. In Python ist die if-Anweisung das Kernkonstrukt, das diesen Entscheidungsprozess steuert.
In diesem Guide erkunden wir die Nutzung von if, else, elif und Pythons dictionary-basierte Switch-Case-Alternative. Jeder Abschnitt enthält prägnante Beispiele zur Veranschaulichung.
if-Statement verstehen- Was passiert, wenn die
if-Bedingung fehlschlägt else-Klausel nutzen- Häufige Fallstricke mit
else eliffür mehrere Zweige einsetzen- Logik mit ternären Ausdrücken verdichten
- Verschachtelte
if-Statements - Switch-Case-Pattern mit Dictionaries implementieren
Python if-Statement Grundlagen
Syntax
if expression:
# Block ausgeführt, wenn Expression True ist
else:
# Block ausgeführt, wenn Expression False ist
Beispiel:
def main():
x, y = 2, 8
if x < y:
st = "x ist kleiner als y"
else:
st = "x ist nicht kleiner als y"
print(st)
if __name__ == "__main__":
main()
Was passiert, wenn die if-Bedingung falsch ist?
Wenn die Bedingung zu False evaluiert und keine else-Klausel vorhanden ist, wird der Körper des if übersprungen und das Programm fährt nach dem Block fort.
Beispiel mit fehlschlagender Bedingung:
def main():
x, y = 8, 4
if x < y:
st = "x ist kleiner als y"
else:
st = "x ist größer oder gleich y"
print(st)
if __name__ == "__main__":
main()
else-Klausel nutzen
if-Bedingung False ist. Er ist nützlich bei binären Entscheidungen.
def main():
x, y = 8, 4
if x < y:
st = "x ist kleiner als y"
else:
st = "x ist größer als y"
print(st)
if __name__ == "__main__":
main()
Häufige Fehler mit else
Wenn zwei Werte gleich sind, kann ein else-Block fälschlicherweise einen Vergleich als „größer“ oder „kleiner“ melden.
def main():
x, y = 8, 8
if x < y:
st = "x ist kleiner als y"
else:
st = "x ist größer als y" # Falsch, wenn x == y
print(st)
if __name__ == "__main__":
main()
elif für mehrere Zweige einführen
Die elif-Klausel erlaubt es, zusätzliche Bedingungen nach dem initialen if zu testen. Sie verhindert den oben gezeigten Fallthrough-Fehler.
def main():
x, y = 8, 8
if x < y:
st = "x ist kleiner als y"
elif x == y:
st = "x ist gleich y"
else:
st = "x ist größer als y"
print(st)
if __name__ == "__main__":
main()
Logik mit ternärem Ausdruck verdichten
Pythons Einzeiler-Syntax kann einfache Vergleiche prägnant machen:
def main():
x, y = 10, 8
st = "x ist kleiner als y" if x < y else "x ist größer oder gleich y"
print(st)
if __name__ == "__main__":
main()
Verschachtelte if-Statements
Verschachtelte Bedingungen sind nützlich, wenn eine Entscheidung von mehreren Variablen abhängt.
total = 100
country = "AU" # Auf "US" ändern für anderen Block
if country == "US":
if total <= 50:
print("Versandkosten betragen $50")
elif total <= 100:
print("Versandkosten betragen $25")
elif total <= 150:
print("Versandkosten betragen $5")
else:
print("KOSTENLOS")
elif country == "AU":
if total <= 50:
print("Versandkosten betragen $100")
else:
print("KOSTENLOS")
Switch-Case-Äquivalent in Python
Python besitzt kein natives switch-Statement, aber ein Dictionary-Lookup bietet dieselbe Klarheit und Effizienz.
def switch_example(argument):
switcher = {
0: "Dies ist Fall Null",
1: "Dies ist Fall Eins",
2: "Dies ist Fall Zwei",
}
return switcher.get(argument, "nichts")
if __name__ == "__main__":
argument = 1
print(switch_example(argument))
Zusammenfassung
- if – Führt aus, wenn Bedingung wahr ist.
- else – Führt aus, wenn vorheriges
iffalsch ist. - elif – Fügt zusätzliche boolesche Prüfungen in Sequenz hinzu.
- Einzeiler (ternär) verkürzen einfache Vergleiche.
- Verschachtelte
if-Blöcke handhaben mehrdimensionale Entscheidungen. - Dictionary-Lookups bieten eine saubere Switch-Case-Alternative.
Python
- Bedingte Logik in C# meistern: If, If-Else, If-ElseIf und verschachtelte If-Anweisungen
- C# Switch Statement meistern: Syntax, Beispiele & Best Practices
- C++ switch-case-Anweisung meistern: Syntax, Ablauf und praktische Beispiele
- C Bedingte Anweisungen meistern: If, Else und mehr
- Die C Switch-Anweisung meistern: Syntax, Ablauf und praktisches Beispiel
- Python-Anweisungen, Einrückung & Kommentare: Klare Anleitung
- Python If…Else-Anweisungen meistern
- Python pass-Statement meistern: Praxisleitfaden
- C++ switch‑case meistern: Syntax, Einsatz und Praxisbeispiele
- Python print()-Funktion: Praktischer Leitfaden mit Beispielen