
¿Cómo utilizar if elif else en Python?
Capítulo 23: El condicional if elif else e input, entrada de datos
En muchas ocasiones vas a necesitar añadir más condiciones, no solo verdadero o falso. Para hacer esto, puedes añadir a tus bloques if
múltiples condiciones elif
. Tantas como necesites.
Voy a escribir un ejemplo parecido al del capítulo anterior, solo que esta vez, habrá unos rangos de edades, no solo mayor o menor de 18 años.
La entrada de datos con input()
Aprovecho para enseñarte algo muy valioso también,input()
. Gracias a esto, podrás hacer que el usuario sea capaz de interactuar con tus programas introduciendo datos.
edad = int(input('¿Cuál es tu edad?\n'))
if edad <= 0:
print('Nadie puede tener esa edad.')
elif edad <= 1 and edad <= 18:
print('Eres menor de edad.')
elif edad >= 18 and edad <= 100:
print('Eres mayor de edad.')
else:
print('Edad no válida.')
Vamos a analizar ese código con calma. Parece muy complicado pero no lo es.
Antes de nada, tengo que decirte que hay otras formas más "correctas" de escribir esto, pero no quiero liarte más, así que lo dejamos de esta forma por el momento.
En la variable edad
estoy almacenando un valor introducido con el teclado por el usuario gracias al input()
, el cual le pregunta, '¿cuál es tu edad?'
.
Debes introducir una edad
(escribes un número con tu teclado y pulsas la tecla ENTER).
Por defecto, el método input()
almacena los datos como strings, y puesto que en este caso queremos trabajar con integers, lo transformamos envolviéndolo con el int()
.
Si la edad introducida es menor o igual a 0
devuelve esto:
Nadie puede tener esa edad.
En cambio, si es mayor o igual a 1
y a la vez es menor que 18
años, nos devuelve esto:
Eres menor de edad.
El operador and
hace que se tengan que cumplir las dos condiciones a la vez. Tiene que ser True
tanto la primera como la segunda condición.
Si la edad es superior a 18
o 18
hasta menos o igual a 100
:
Eres mayor de edad.
Y siempre que no se cumpla ninguna de las condiciones anteriores, se ejecutará elelse
.
Te recomiendo que veas el vídeo al menos en estos capítulos que son un poco más difíciles, te ayudará a entender todo esto mejor.
Ejercicios de Python
- Al siguiente código añádele un par de rangos de edad. Uno de
18
años hasta45
y otro de más de100
años hasta120
.
edad = int(input('¿Cuál es tu edad?\n'))
if edad <= 0:
print('Nadie puede tener esa edad.')
elif edad >= 1 and edad <= 18:
print('Eres menor de edad.')
elif edad >= 18 and edad <= 100:
print('Eres mayor de edad.')
else:
print('Edad no válida.')
La solución la encontrarás aquí: Ejercicios resueltos de Python.
Comentarios
Si te quedan dudas sobre el temario, sobre Python, o cualquier otra cosa relacionada o simplemente quieres agradecer, aquí tienes tu sitio para dejar tu granito de arena. Gracias por tus comentarios y por darle vida a este sitio web.