In questo articolo imparerai a usare l'operatore condizionale o ternario per alterare il flusso di controllo del programma.
L'operatore condizionale ternario "? :"
è una scorciatoia per l'istruzione if-else.
La sintassi per l'operatore condizionale ternario è:
condizione ? valore1: valore2
Come funziona l'operatore condizionale ternario?
Ecco come funziona
- Se la condizione è vera, restituisce valore1.
- Se la condizione è falsa, restituisce valore2.
Il codice equivalente di cui sopra utilizzando if - else è:
se condizione (valore1) altrimenti (valore2)
Perché usare l'operatore condizionale ternario?
Forse ti starai chiedendo perché dovremmo usare l'operatore condizionale se fa lo stesso lavoro dell'istruzione if-else. Lo scopo principale del suo utilizzo è rendere il codice più breve e più leggibile.
Per condizioni semplici, puoi valutarlo in una singola riga con meno codice di if-else.
Esempio 1: semplice esempio che utilizza l'operatore condizionale ternario
print(true && false ? "The condition is true": "The condition is false")
Il codice equivalente di cui sopra utilizzando if - else è:
if true && false ( print("The condition is true") ) else ( print("The condition is false") )
Quando esegui il programma sopra, l'output sarà:
La condizione è falsa
Nel programma precedente, l'espressione true && false
restituisce false
, pertanto l'istruzione restituisce la stringa la condizione è falsa e istruzione print emette la stringa nella console.
Se si modifica l'espressione mentre true || false
l'istruzione valuta true
e restituisce la stringa La condizione è vera e l'istruzione print emette la stringa nella console.
Cose da ricordare
L'operatore condizionale ternario può anche essere utilizzato come alternativa if-else-if
all'istruzione.
Con l'uso dell'operatore condizionale ternario è possibile sostituire più righe di if-else-if
codice con una singola riga.
Tuttavia, potrebbe non essere una buona idea.
Esempio 2: annidato se altrimenti utilizzando l'operatore condizionale ternario
if true && false ( print("Result is (true && false)") ) else if true || false ( print("Result is (true || false)") ) else if false || false ( print("Result is (false || false)") ) else ( print("Default else statement") )
Il codice equivalente sopra riportato che utilizza l'operatore condizionale ternario è:
print(true && false ? "Result is (true && false)" : true || false ? "Result is (true || false)" : false || false ? "Result is (false || false)" : "The condition is unknown")
Quando esegui i programmi di cui sopra, entrambi i risultati saranno:
Il risultato è vero
Nei programmi di cui sopra, sebbene le istruzioni di if-else-if
siano sostituite con una riga dall'uso dell'operatore condizionale. L'espressione usata nell'operatore condizionale ternario è davvero difficile da capire.
Quindi, attenersi all'uso dell'operatore condizionale ternario solo come alternativa if-else
all'istruzione.