logo

Ternär operatör i Python

Den ternära operatören i Python tillåter oss att utföra villkorade kontroller och tilldela värden eller utföra operationer på en enda rad. Det är också känt som ett villkorat uttryck eftersom det utvärderar ett tillstånd och returnerar ett värde om villkoret är sant och ett annat om det är falskt.

Grundläggande exempel på ternär operatör

Det enklaste sättet att använda en Python ternär operatör är när vi har en enkel Om annat villkor - Endera av de två förhållandena är sanna och den andra är falsk.



Låt oss börja med ett enkelt exempel för att avgöra om ett nummer är jämnt eller udda:

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

Produktion
Odd 

Den ternära operatören kan användas på olika sätt. Låt oss se några olika exempel för att använda ternära operatörer i Python:

Innehållsbord



Ternär operatör i kapslad om annars

Den ternära operatören kan också användas i Python kapslat if-annon uttalande . Vi kan bo ternära operatörer för att utvärdera flera villkor i en enda rad.

Syntax: värde_if_true om villkor annars värde_if_false

java matematik klass

Exempel:



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

Produktion
Negative 

Förklaring:

  • Först kontrollerar det om num> 0. Om det är sant returnerar det "positivt".
  • Om falskt kontrollerar det om num< 0. If True it returns 'Negative'.
  • Om båda villkoren misslyckas är det inte att "noll".

Ternär operatör med tuple

Den ternära operatören kan också skrivas med Python tuples . Tupelindexeringsmetoden är ett alternativ till den ternära operatören.

lokaldatum

Syntax: (Condition_is_false Condition_is_true) [Condition]

Exempel:

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

Produktion
Odd 

Förklaring:

  • Villkoret num % 2 == 0 utvärderar till falskt (index 0) så det väljer "udda".

Ternär operatör som använder ordbok

En ordbok kan användas för att kartlägga förhållanden till värden som ger ett sätt att använda en ternär operatör med mer komplexa förhållanden.

Syntax: condition_dict = {true: value_if_true falskt: värde_if_false}

Exempel:

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

Produktion
20 

Förklaring: Detta använder en ordbok där nyckeln är sant eller falsk baserat på villkoret a> b. Motsvarande värde (A eller B) väljs sedan.

Ternär operatör som använder Python Lambda

Lambdas kan användas i samband med den ternära operatören för inline villkorad logik.

Syntax: lambda x: value_if_true om villkor annars värde_if_false

Exempel:

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

Produktion
20 

Förklaring: Detta definierar en anonym funktion (Lambda) som tar två argument och returnerar den större med den ternära operatören. Det kallas sedan med A och B.

Ternär operatör med tryckfunktion

Den ternära operatören kan också direkt användas med Python Print Statement . Dess syntax är en S följer:

för loopar java

Syntax: utskrift (värde_if_true om villkor annars värde_if_false)

Exempel: I det här exemplet hittar vi det minsta antalet bland två nummer med Python Ternary Operator med utskriftsförklaring.

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

Produktion
b is greater 

Förklaring: Detta kontrollerar om A är större än B. Om sant skriver det "A är större"; Annars skriver det ut 'B är ​​större'.

Begränsningar av Python Ternary Operator

Medan den ternära operatören är kortfattad bör den användas med försiktighet:

  • Det kan minska läsbarheten om överanvändning eller används under komplexa förhållanden.
  • Det är begränsat till enkla enstaka uttryck.