Curso de Python desde cero

¿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

  1. Al siguiente código añádele un par de rangos de edad. Uno de 18 años hasta 45 y otro de más de 100 años hasta 120.
  2. 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.

Programación Fácil YouTube

Suscríbete

Si te ha gustado este curso y crees que el trabajo merece la pena, te agradeceré eternamente que te suscribas a mi canal de YouTube para apoyarme y que pueda seguir haciendo cursos gratuitos.

Además, si te encanta la programación, tienes un montón más de cursos gratuitos para ver.

No solo eso, podrás participar enviándome comentarios con tus sugerencias para temas específicos o cursos completos o incluso las dudas que tengas y las intentaré ir resolviendo en los cursos que estén todavía abiertos.