logo

Ternárny operátor v Pythone

Ternárny operátor v Pythone nám umožňuje vykonávať podmienečné kontroly a priradiť hodnoty alebo vykonávať operácie na jednom riadku. Je tiež známy ako podmienený výraz, pretože hodnotí stav a vracia jednu hodnotu, ak je podmienka pravdivá a iná, ak je nepravdivá.

Základný príklad ternárneho operátora

Najjednoduchší spôsob, ako použiť ternárny operátor Python, je, keď máme jednoduchý Ak inak podmienka - jedna z týchto dvoch podmienok je pravdivá a druhá je nepravdivá.



Začnime jednoduchým príkladom, aby sme zistili, či je číslo párne alebo nepárne:

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

Výstup
Odd 

Ternárny operátor je možné použiť rôznymi spôsobmi. Pozrime sa na niekoľko rôznych príkladov na použitie ternárnych operátorov v Pythone:

Tabuľka obsahu



Ternárny operátor v hniezdení, ak inde

Ternárny operátor môže byť tiež použitý v Python vnorené vyhlásenie If-Else . Môžeme hniezdiť ternárnych operátorov, aby sme vyhodnotili viac podmienok v jednej línii.

Syntax: value_if_true, ak je podmienka inak value_if_false

Príklad:



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

Výstup
Negative 

Vysvetlenie:

  • Najprv skontroluje, či num> 0. Ak true vráti „kladné“.
  • Ak false to kontroluje, ak NUM< 0. If True it returns 'Negative'.
  • Ak obe podmienky zlyhajú, predvolene na „nula“.

Ternárny operátor pomocou Tuple

Ternárny operátor je možné napísať aj pomocou použitia Python . Metóda indexovania Tuple je alternatívou k ternárnym operátorom.

Syntax: (Condition_is_false Condition_is_true) [stav]

dátum použitia java

Príklad:

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

Výstup
Odd 

Vysvetlenie:

  • Podmienka num % 2 == 0 vyhodnotí na false (index 0), takže vyberie „nepárne“.

Ternárny operátor používajúci slovník

A slovník Môže sa použiť na mapovanie podmienok na hodnoty poskytujúce spôsob, ako používať ternárny operátor s zložitejšími podmienkami.

lexikografický poriadok

Syntax: condition_dict = {true: value_if_true false: value_if_false}

Príklad:

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

Výstup
20 

Vysvetlenie: Používa sa slovník, v ktorom je kľúč pravdivý alebo nepravdivý na základe podmienky A> b. Potom sa vyberie zodpovedajúca hodnota (A alebo B).

Ternárny operátor s použitím Python Lambda

Lambdas Môže byť použitý v spojení s ternárnym operátorom pre inline podmienenú logiku.

Syntax: lambda x: value_if_true, ak je podmienka else value_if_false

Príklad:

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

Výstup
20 

Vysvetlenie: Toto definuje anonymnú funkciu (LAMBDA), ktorá berie dva argumenty a vracia väčšiu pomocou ternárneho operátora. Potom sa volá s a a b.

Ternárny operátor s tlačovou funkciou

Ternárny operátor môže byť tiež priamo použitý s Vyhlásenie o tlačení Python . Jeho syntax je nasledovaná:

Syntax: tlač (value_if_true, ak je podmienka inak value_if_false)

Príklad: V tomto príklade nachádzame minimálne číslo medzi dvoma číslami pomocou operátora Python Ternár s výpisom.

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

Výstup
b is greater 

Vysvetlenie: To kontroluje, či je a je väčšia ako b. Ak je to pravda, tlačí „a je väčší“; V opačnom prípade vytlačí „B je väčší“.

Obmedzenia ternárneho operátora Python

Zatiaľ čo ternárny operátor je stručný, mal by sa používať opatrne:

  • Ak je nadmerne používaná alebo použitá v zložitých podmienkach, môže znížiť čitateľnosť.
  • Je obmedzená na jednoduché jednoriadkové výrazy.