Introducción a las sentencias if-elif-else en Python
Desliza para mostrar el menú
La sentencia if-elif-else es una herramienta poderosa en Python que permite verificar múltiples condiciones y ejecutar diferentes bloques de código según la condición que se cumpla. Es especialmente útil cuando se deben evaluar varias condiciones, pero solo se desea ejecutar un bloque de código.
Cuando es necesario elegir entre varias condiciones, se prefiere elif en lugar de múltiples sentencias if. Esto se debe a que elif garantiza que, una vez que se cumple una condición, el resto de las condiciones se omiten, mejorando la eficiencia. En cambio, el uso de varias sentencias if provoca que todas las condiciones se evalúen de forma independiente, lo que puede generar comprobaciones innecesarias y código redundante.
A continuación, se realiza un seguimiento de la duración del sueño de un usuario y se clasifica en diferentes rangos. Se verificará si el usuario ha alcanzado su objetivo de sueño, está cerca de lograrlo o necesita más descanso.
1234567891011hours_slept = 6 sleep_goal = 8 if hours_slept < 0: print("Sleep hours cannot be negative.") if hours_slept >= sleep_goal: print("Great job! You've met your sleep goal!") if hours_slept >= sleep_goal - 2: print("You're almost there! Keep going, you'll reach your goal soon!") if hours_slept < sleep_goal - 2: print("You need more rest. Try to sleep a bit longer tonight.")
En esta versión, todas las condiciones se evalúan de forma independiente, incluso si una condición ya se ha cumplido. Esto genera comprobaciones redundantes. Por ejemplo, si el usuario ya ha alcanzado su objetivo, el código aún verifica si está cerca del objetivo o si necesita más descanso.
1234567891011hours_slept = 6 sleep_goal = 8 if hours_slept < 0: print("Sleep hours cannot be negative.") elif hours_slept >= sleep_goal: print("Great job! You've met your sleep goal!") elif hours_slept >= sleep_goal - 2: print("You're almost there! Keep going, you'll reach your goal soon!") else: print("You need more rest. Try to sleep a bit longer tonight.")
El uso de elif ayuda a que el código sea más legible y eficiente, ya que una vez que se cumple una condición, no es necesario comprobar las demás.
Este diagrama visualiza el flujo de una estructura de decisión if-elif-else en Python. El proceso comienza evaluando la condición inicial if:
- Si la primera condición es verdadera, se ejecuta el código dentro del bloque
if; - Si la primera condición es falsa, pasa a la siguiente condición, que es el
elif. Si la condición deelifes verdadera, se ejecuta el bloque correspondiente deelif; - Si el primer
elifes falso, se puede comprobar otroelif, y si es verdadero, se ejecuta su respectivo bloque de código; - Si ninguna de las condiciones de
ifoelifse cumple (es decir, todas son falsas), se ejecuta el bloque finalelse, asegurando que siempre se ejecute un bloque de código.
Este flujo garantiza que solo se ejecute la primera condición verdadera, proporcionando una forma clara y eficiente de manejar múltiples condiciones. La estructura if-elif-else evita comprobaciones redundantes y solo se ejecuta un bloque de código de toda la estructura.
1. ¿Cuál es la ventaja de usar if-elif-else en lugar de múltiples sentencias if?
2. ¿Qué se imprimirá con el siguiente código?
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla