logo

Ternärer Operator in Python

In Python Der ternäre Operator bestimmt, ob eine Bedingung wahr oder falsch ist und gibt dann den entsprechenden Wert als Ergebnis zurück. Der ternäre Operator ist in Fällen nützlich, in denen wir einer Variablen basierend auf einer einfachen Bedingung einen Wert zuweisen müssen und unseren Code prägnanter halten möchten – alles in nur einer Codezeile.

Dies ist praktisch, wenn wir vermeiden möchten, mehrere Zeilen für eine einfache if-else-Bedingung zu schreiben. Wie im einfachen if-else, der ersten Option, dem wahrer Wert wird ausgeführt, wenn die im Ausdruck angegebene Bedingung wahr ist. Wenn die Bedingung „Falsch“ zurückgibt, dann false_value wird durchgeführt.



  Syntax:     true_value   if   condition   else   false_value>

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:

xdxd Bedeutung

Inhaltsverzeichnis

Python Ternary, falls sonst

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



Beispiel: In diesem Code werden wir die Mindestzahl der beiden gegebenen Zahlen vergleichen und ermitteln, indem wir die ternären Operatoren in Python verwenden und das Ergebnis in einem Variablennamen speichern 'Mindest'. Wenn ' A ' ist minimal, der Wert von ' A ' wird gedruckt, andernfalls der Wert von ' B ‘ wird gedruckt.

Python
# Program to demonstrate ternary operator a = 10 b = 20 # python ternary operator min = 'a is minimum' if a < b else 'b is minimum' print(min)>

Ausgabe:

a is minimum>

Ternärer Operator in Nested If else

Der ternäre Operator kann auch in verwendet werden In Python verschachtelte if-else-Anweisung . Die Syntax dafür lautet wie folgt:



Syntax: true_value if condition1 else (true_value if condition2 else false_value)>

Beispiel: In diesem Beispiel verwenden wir einen verschachtelten if-else, um den ternären Operator zu demonstrieren. Wenn ' A' Und ' B „gleich sind, dann drucken wir „a und b sind gleich“ und andernfalls, wenn „a“ größer als „b“ ist, drucken wir „a ist größer als b“, andernfalls „b ist größer als a“.

Gimp als JPEG speichern
Python
# Python program to demonstrate nested ternary operator a = 10 b = 20 print('Both are equal' if a == b else 'a is greater' if a>b sonst 'b ist größer')>

Ausgabe:

b is greater>

Ternärer Operator mit Python-Tupel

Der ternäre Operator kann auch mit geschrieben werden Python-Tupel . In diesem Fall deklarieren wir die Werte False und True innerhalb eines Tupels am Index 0 bzw. 1. Basierend auf der Bedingung wird der Wert am Index 0 ausgeführt, wenn das Ergebnis „Falsch“ ist, also 0. Wenn die Bedingung „True“ ergibt, wird der Wert am Index 1 des Tupels ausgeführt.

Syntax: (false_value, true_value) [condition]>

Beispiel: In diesem Beispiel vergleichen und drucken wir den Mindestwert, wobei die auszuführenden Werte innerhalb des Tupels deklariert werden.

Python
# Program to demonstrate ternary operator a = 10 b = 20 # python ternary operator usinf tuple print(('b is minimum', 'a is minimum') [a < b])>

Ausgabe:

a is minimum>

Ternärer Operator mit Python-Wörterbuch

Der ternäre Python-Operator kann auch mit geschrieben werden Python-Wörterbuch . In diesem Fall verwenden wir die Schlüsselwörter „True“ und „False“ als Wörterbuchschlüssel und stellen ihnen einen Wert zur Verfügung, der basierend auf dem Ergebnis der Bedingung ausgeführt werden soll.

  Syntax: (True: true_value, False: false_value) [condition]>

Beispiel: In diesem Beispiel verwenden wir Dictionary, um den ternären Operator zu demonstrieren, bei dem wir Wörterbuchschlüsseln einen True- und einen False-Wert zugewiesen haben, die basierend auf dem Ergebnis der Bedingung ausgeführt werden.

Python
# Python program to demonstrate ternary operator a, b = 10, 20 print({True: 'a is minimum', False: 'b is minimum'} [a < b])>

Ausgabe:

Java-Mathe
a is minimum>

Ternärer Operator mit Python Lambda

In Python, Lambda-Funktionen werden verwendet, wenn nur ein Ausdruck ausgewertet werden muss. Daher ist die Verwendung des Teranery-Operators mit Lambda recht einfach und unkompliziert. Es funktioniert genau wie das Tupel. Das heißt, wir deklarieren die Werte „Falsch“ und „Wahr“ bei Index 0 bzw. 1.

Syntax: (lambda: false_value, lambda: true_value) [condition] ()>

Beispiel: In diesem Beispiel verwenden wir Lambda, um den ternären Operator zu demonstrieren. Wir verwenden Tupel zum Auswählen eines Elements und wenn [a

Python
# Python program to demonstrate ternary operator a = 10 b = 20 print((lambda: 'b is minimum', lambda: 'a is minimum')[a < b]())>

Ausgabe:

Wann kam Win 7 heraus?
a is minimum>

Ternärer Operator mit Druckfunktion

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

Syntax: print(true_value) if (condition) print(false_value)>

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 # ternary operator with print statement print(a,'is minimum') if (a < b) else print(b,'is minimum')>

Ausgabe:

10 is minimum>

Einschränkungen des ternären Python-Operators

Der ternäre Python-Operator wird zum Schreiben prägnanter bedingter Anweisungen verwendet, weist jedoch auch einige Einschränkungen auf.

  • Lesbarkeit: T Der ernäre Operator kann einfache bedingte Ausdrücke prägnanter machen, er kann aber auch die Lesbarkeit Ihres Codes beeinträchtigen, insbesondere wenn die Bedingung und die Ausdrücke komplex sind.
  • Fehlerpotenzial : Falsche Platzierung von Klammern, fehlende Doppelpunkte oder falsche Reihenfolge von Ausdrücken können zu Syntaxfehlern führen, die möglicherweise schwerer zu erkennen sind.
  • Debuggen : Beim Debuggen kann es schwieriger sein, die Werte von Variablen zu überprüfen, die an einem komplexen ternären Ausdruck beteiligt sind.
  • Wartung und Erweiterbarkeit : Komplexe ternäre Ausdrücke können schwieriger zu warten und zu erweitern sein, insbesondere wenn die Codebasis wächst.
  • Zuweisungsanweisungen können nicht verwendet werden: Jeder Operand des ternären Python-Operators ist ein Ausdruck , keine Anweisung, das bedeutet, dass wir in keinem von ihnen Zuweisungsanweisungen verwenden können. Andernfalls gibt das Programm einen Fehler aus.

Beispiel:

Python
3 if True else x=6>

Ausgabe:

File 'Solution.py', line 1  3 if True else x=6  ^ SyntaxError: can't assign to conditional expression>