En este artículo, aprenderá a usar un operador condicional o ternario para alterar el flujo de control del programa.
El operador condicional ternario "? :"
es una abreviatura de la instrucción if-else.
La sintaxis del operador condicional ternario es:
condición? valor1: valor2
¿Cómo funciona el operador condicional ternario?
Así es como funciona esto
- Si la condición es verdadera, devuelve value1.
- Si la condición es falsa, devuelve value2.
El código equivalente anterior usando if - else es:
if condición (valor1) else (valor2)
¿Por qué utilizar el operador condicional ternario?
Quizás se pregunte por qué deberíamos usar el operador condicional si hace el mismo trabajo que la instrucción if-else. El propósito principal de usarlo es hacer que el código sea más corto y más legible.
Para condiciones simples, puede evaluarlo en una sola línea con menos código que if-else.
Ejemplo 1: ejemplo simple usando un operador condicional ternario
print(true && false ? "The condition is true": "The condition is false")
El código equivalente anterior usando if - else es:
if true && false ( print("The condition is true") ) else ( print("The condition is false") )
Cuando ejecute el programa anterior, la salida será:
La condición es falsa
En el programa anterior, la expresión se true && false
evalúa false
, por lo tanto, la declaración devuelve la cadena. La condición es falsa y la declaración de impresión muestra la cadena en la consola.
Si cambia la expresión a medida que true || false
la declaración se evalúa true
y devuelve la cadena, la condición es verdadera y la declaración de impresión muestra la cadena en la consola.
Cosas para recordar
El operador condicional ternario también se puede utilizar como una alternativa de if-else-if
declaración.
Con el uso del operador condicional ternario, puede reemplazar varias líneas de if-else-if
código con una sola línea.
Sin embargo, puede que no sea una buena idea.
Ejemplo 2: anidado if else usando un operador condicional 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") )
El código equivalente anterior que usa el operador condicional ternario es:
print(true && false ? "Result is (true && false)" : true || false ? "Result is (true || false)" : false || false ? "Result is (false || false)" : "The condition is unknown")
Cuando ejecute los programas anteriores, ambos resultados serán:
El resultado es verdadero
En los programas anteriores, aunque las declaraciones de if-else-if
se reemplazan con una sola línea mediante el uso del operador condicional. La expresión utilizada en operador condicional ternario es realmente difícil de entender.
Por lo tanto, limítese al uso del operador condicional ternario como una alternativa de if-else
declaración solamente.