logo

Ternärer Operator in Python

Der ternäre Operator in Python ermöglicht es uns, bedingte Prüfungen durchzuführen und Werte zuzuweisen oder Operationen in einer einzelnen Zeile auszuführen. Er wird auch als bedingter Ausdruck bezeichnet, da er eine Bedingung auswertet und einen Wert zurückgibt, wenn die Bedingung wahr ist, und einen anderen, wenn sie falsch ist.

Grundlegendes Beispiel eines ternären Operators

Der einfachste Weg, einen ternären Python-Operator zu verwenden, ist, wenn wir einen einfachen haben wenn sonst Bedingung - Eine der beiden Bedingungen ist wahr und die andere ist falsch.



Beginnen wir mit einem einfachen Beispiel, um festzustellen, ob eine Zahl gerade oder ungerade ist:

Python
n = 5 res = 'Even' if n % 2 == 0 else 'Odd' print(res) 

Ausgabe
Odd 

Der ternäre Operator kann auf verschiedene Arten verwendet werden. Sehen wir uns einige verschiedene Beispiele für die Verwendung ternärer Operatoren in Python an:

Inhaltsverzeichnis



Ternärer Operator in Nested If else

Der ternäre Operator kann auch in verwendet werden In Python verschachtelte if-else-Anweisung . Wir können ternäre Operatoren verschachteln, um mehrere Bedingungen in einer einzigen Zeile auszuwerten.

Syntax: value_if_true, wenn Bedingung, sonst value_if_false

Beispiel:



Python
n = -5 res = 'Positive' if n > 0 else 'Negative' if n < 0 else 'Zero' print(res) 

Ausgabe
Negative 

Erläuterung:

  • Zuerst wird geprüft, ob num > 0 ist. Bei „True“ wird „Positiv“ zurückgegeben.
  • Bei „Falsch“ wird geprüft, ob num< 0. If True it returns 'Negative'.
  • Wenn beide Bedingungen fehlschlagen, wird der Wert standardmäßig auf „Null“ gesetzt.

Ternärer Operator mit Tupel

Der ternäre Operator kann auch mit geschrieben werden Python-Tupel . Die Tupel-Indizierungsmethode ist eine Alternative zum ternären Operator.

Syntax: (condition_is_false condition_is_true)[Bedingung]

Beispiel:

Python
n = 7 res = ('Odd' 'Even')[n % 2 == 0] print(res) 

Ausgabe
Odd 

Erläuterung:

  • Die Bedingung „num % 2 == 0“ ergibt „Falsch“ (Index 0) und wählt daher „Ungerade“ aus.

Ternärer Operator mit Wörterbuch

A Wörterbuch kann verwendet werden, um Bedingungen auf Werte abzubilden, was die Möglichkeit bietet, einen ternären Operator mit komplexeren Bedingungen zu verwenden.

Syntax: condition_dict = {True: value_if_true False: value_if_false}

Beispiel:

Python
a = 10 b = 20 max = {True: a False: b}[a > b] print(max) 

Ausgabe
20 

Erläuterung: Dabei wird ein Wörterbuch verwendet, bei dem der Schlüssel basierend auf der Bedingung a > b „True“ oder „False“ ist. Anschließend wird der entsprechende Wert (a oder b) ausgewählt.

Ternärer Operator mit Python Lambda

Lambdas kann in Verbindung mit dem ternären Operator für Inline-Bedingungslogik verwendet werden.

Syntax: Lambda x: value_if_true, wenn Bedingung, sonst value_if_false

Beispiel:

Python
a = 10 b = 20 max = (lambda x y: x if x > y else y)(a b) print(max) 

Ausgabe
20 

Erläuterung: Dies definiert eine anonyme Funktion (Lambda), die zwei Argumente akzeptiert und mithilfe des ternären Operators das größere zurückgibt. Es wird dann mit a und b aufgerufen.

Ternärer Operator mit Druckfunktion

Der ternäre Operator kann auch direkt mit verwendet werden Python-Druckanweisung . Seine Syntax ist wie folgt:

Syntax: print(value_if_true, wenn Bedingung, sonst value_if_false)

kein Eingangssignal

Beispiel: In diesem Beispiel ermitteln wir die Mindestzahl zwischen zwei Zahlen mithilfe des ternären Python-Operators mit print-Anweisung.

Python
a = 10 b = 20 print('a is greater' if a > b else 'b is greater') 

Ausgabe
b is greater 

Erläuterung: Dabei wird geprüft, ob a größer als b ist. Wenn „true“, wird „a ist größer“ ausgegeben; andernfalls wird „b ist größer“ ausgegeben.

Einschränkungen des ternären Python-Operators

Obwohl der ternäre Operator prägnant ist, sollte er mit Vorsicht verwendet werden:

  • Es kann die Lesbarkeit beeinträchtigen, wenn es übermäßig oder unter komplexen Bedingungen verwendet wird.
  • Es ist auf einfache einzeilige Ausdrücke beschränkt.