logo

Operatore ternario in Python

L'operatore ternario in Python ci consente di eseguire controlli condizionali e assegnare valori o eseguire operazioni su una singola riga. È nota anche come espressione condizionale perché valuta una condizione e restituisce un valore se la condizione è vera e un altro se è falsa.

Esempio base di operatore ternario

Il modo più semplice per utilizzare un operatore ternario Python è quando abbiamo un semplice se altrimenti condizione - una delle due condizioni è vera e l'altra è falsa.



Cominciamo con un semplice esempio per determinare se un numero è pari o dispari:

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

Produzione
Odd 

L'operatore ternario può essere utilizzato in vari modi. Vediamo alcuni esempi diversi per utilizzare gli operatori ternari in Python:

Sommario



come cambiare la stringa in int

Operatore ternario in Nested If else

È possibile utilizzare anche l'operatore ternario Python ha annidato l'istruzione if-else . Possiamo annidare operatori ternari per valutare più condizioni in un'unica riga.

Sintassi: valore_se_vero se condizione altrimenti valore_se_falso

Esempio:



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

Produzione
Negative 

Spiegazione:

  • Per prima cosa controlla se num > 0. Se True restituisce 'Positivo'.
  • Se False controlla se num< 0. If True it returns 'Negative'.
  • Se entrambe le condizioni falliscono, il valore predefinito è "Zero".

Operatore ternario che utilizza Tupla

L'operatore ternario può anche essere scritto utilizzando Tuple Python . Il metodo di indicizzazione della tupla è un'alternativa all'operatore ternario.

np.random.rand

Sintassi: (condizione_è_falsa condizione_è_vera)[condizione]

Esempio:

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

Produzione
Odd 

Spiegazione:

  • La condizione num % 2 == 0 restituisce False (indice 0), quindi seleziona 'Dispari'.

Operatore ternario che utilizza il dizionario

UN dizionario può essere utilizzato per mappare le condizioni sui valori fornendo un modo per utilizzare un operatore ternario con condizioni più complesse.

Sintassi: condizione_dict = {Vero: valore_if_true Falso: valore_if_false}

Esempio:

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

Produzione
20 

Spiegazione: Utilizza un dizionario in cui la chiave è Vero o Falso in base alla condizione a > b. Viene quindi selezionato il valore corrispondente (aob).

Operatore ternario che utilizza Python Lambda

Lambda può essere utilizzato insieme all'operatore ternario per la logica condizionale in linea.

Sintassi: lambda x: valore_se_vero se condizione altrimenti valore_se_falso

Esempio:

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

Produzione
20 

Spiegazione: Ciò definisce una funzione anonima (lambda) che accetta due argomenti e restituisce quello più grande utilizzando l'operatore ternario. Viene quindi chiamato con a e b.

Operatore ternario con funzione di stampa

L'operatore ternario può essere utilizzato anche direttamente con il Dichiarazione di stampa Python . La sua sintassi è la seguente:

Sintassi: print(valore_se_vero se condizione altrimenti valore_se_falso)

Esempio: In questo esempio troviamo il numero minimo tra due numeri utilizzando l'operatore ternario Python con l'istruzione print.

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

Produzione
b is greater 

Spiegazione: Questo controlla se a è maggiore di b. Se vero stampa 'a è maggiore'; altrimenti stampa 'b è maggiore'.

Limitazioni dell'operatore ternario Python

Sebbene l'operatore ternario sia conciso, dovrebbe essere usato con cautela:

  • Può ridurre la leggibilità se utilizzato in modo eccessivo o in condizioni complesse.
  • È limitato a semplici espressioni a riga singola.