Der ternäre Bedingungsoperator ist eine kompakte Möglichkeit, einen von zwei Werten basierend auf einer Bedingung zu wählen. Er ist besonders nützlich für einfache if-else-Fälle, bei denen nur ein Wert abhängig von einer Bedingung bestimmt wird.
Wichtig: Es handelt sich um einen Ausdruck, der einen Wert liefert – er wird häufig in Zuweisungen verwendet, kann aber grundsätzlich überall dort stehen, wo ein Wert erwartet wird.
Die Syntax des ternären Bedingungsoperators in Python ist:
x if condition else y
Da es sich um einen Ausdruck handelt, kann der ternäre Operator z. B. auch direkt in Funktionsaufrufen oder anderen Ausdrücken verwendet werden.
Ein einfaches Beispiel könnte die Zuweisung einer Variablen greeting sein, die entweder `„Good morning“` oder `„Good day“` basierend auf der aktuellen Stunde enthält:
hour = 9 # aktuelle Stunde greeting = "Good morning" if hour < 12 else "Good day" print(greeting) # Output: "Good morning"
In diesem Beispiel wird `„Good morning“` ausgegeben, weil die Bedingung `hour < 12` wahr ist.
Der ternäre Bedingungsoperator ist eine verkürzte Form einer if-else-Anweisung. Zum Vergleich, das obige Beispiel könnte auch mit einer herkömmlichen if-else-Anweisung geschrieben werden:
hour = 9 # aktuelle Stunde if hour < 12: greeting = "Good morning" else: greeting = "Good day" print(greeting) # Output: "Good morning"
Der ternäre Bedingungsoperator ist kürzer und oft gut lesbar, sollte aber sparsam und nur bei einfachen Bedingungen verwendet werden, damit der Code verständlich bleibt.