Logische Operatoren in Python
Swipe um das Menü anzuzeigen
Zuvor haben wir Situationen betrachtet, in denen eine einzelne Bedingung in der if-Anweisung verwendet wurde. Nun betrachten wir Szenarien, in denen mehrere Bedingungen ausgewertet werden müssen.
Verschachtelte if-Anweisungen
Eine Möglichkeit ist die Verwendung verschachtelter if-Anweisungen, wie im Beispiel gezeigt:
123456steps_taken = 8000 calories_burned = 300 if steps_taken >= 5000: if calories_burned >= 500: print("Excellent work! You hit your daily fitness goals.")
Die starke Nutzung verschachtelter if-Bedingungen gilt jedoch nicht als Best Practice. Ein erfahrener Entwickler würde stattdessen logische Operatoren verwenden, anstatt Bedingungen zu verschachteln.
Verwendung logischer Operatoren
Logische Operatoren ermöglichen es, mehrere Bedingungen effizienter zu kombinieren.
Die Programmiersprache Python verfügt über drei logische Operatoren: not, and, or.
12345steps_taken = 8000 calories_burned = 300 if steps_taken >= 5000 and calories_burned >= 500: print("Excellent work! You hit your daily fitness goals.")
Der Operator not
not wird auf eine Bedingung angewendet und kehrt deren Wert um.
1234steps_taken = 0 if not steps_taken: print("No steps recorded yet. Time to get moving!")
In der Python-Syntax entspricht jeder "leere" Wert False und jeder "nicht-leere" Wert True. Zum Beispiel:
- 0 ist False, 1 ist True;
- [] ist False, [1] ist True;
- "" ist False, "a" ist True;
- usw.
Logisches and
Bedingung mit and gilt nur, wenn beide Bedingungen True sind.
123456steps_taken = 8000 calories_burned = 600 hydration_level = 2 if steps_taken >= 5000 and calories_burned >= 500 and hydration_level >= 2: print("Amazing! You've achieved all your fitness goals for the day.")
Logisches or
Bedingung mit or gilt, wenn mindestens eine der zwei (oder mehr) angegebenen Bedingungen True ist.
Angenommen, kleine Erfolge sollen gefeiert werden. Wenn mindestens eines der Ziele erreicht wird, eine motivierende Nachricht ausgeben.
123456steps_taken = 8000 calories_burned = 200 hydration_level = 2 if steps_taken >= 10000 or calories_burned >= 500 or hydration_level >= 2: print("Great job! You're making progress on your fitness journey.")
Hier erfüllt der hydration_level die Bedingung, daher wird die if-Anweisung ausgeführt. Beachte: Beim Operator or muss nur eine Bedingung True sein.
1. In einer Fitness-Tracker-App soll überprüft werden, ob ein Benutzer sein tägliches Schrittziel und Kalorienziel erreicht hat. Welchen logischen Operator solltest du verwenden?
2. Wie würdest du überprüfen, ob der Benutzer mindestens eines seiner Fitnessziele erreicht hat?
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen