Hasta ahora solamente podemos realizar programa que se comportan de manera lineal, es decir, A → B → C, sin embargo, que pasa si quisiéramos ir de A → C y no pasar por B.
Para esto utilizamos condicionales, los cuales pueden cambiar el flujo del algoritmo, basado en una serie de condicionales lógicas. Para ello el lenguaje de programación en Python ofrece las sentencias if
, elif
y else
if
: Esta sentencia permite que un programa ejecute una determinada acción si se cumple la condición propuesta en la respectiva sentencia.if-else
: Sentencia que permite que un programa ejecute una determinada acción si se cumple una especifica condición, si esta no entra en este primer bloque de instrucción, entonces se ejecuta la tarea propuesta en el bloque de la sentencia else
.if-elif-else
: Conocida también como condicionales anidados o sentencias if
anidadas, es una estructuración de varias sentencias if
, la cual permite realizar una determinada tarea en un bloque de sentencia con más de dos posibilidades de respuesta.Por ejemplo, suponiendo que elaboramos un determinado programa y se desea establecer que si alguna condición, valor de entrada o salida se cumple realice una especifica acción.
“Realice un algoritmo el cual le pida a un usuario su edad de manera que si esta es menor de 18 años imprima por pantalla que es menor de edad, si es mayor o igual a esta edad que imprima por pantalla que es mayor de edad y si esta es menor a 0 entonces imprima que la edad introducida no es válida”.
edad = int(input("Ingrese su edad: "))
if edad < 0:
print("La edad no es valida")
elif edad > 18:
print("Persona mayor de edad.")
else:
print("Persona menor de edad")
Cualquier código dentro de un bloque condicional es valido (siempre que no contenga errores), lo que permite realizar sentencias condicionales anidadas.
age = -1
if age <= 0:
if age == 0:
print('La edad no puede ser 0')
else:
print('La edad no puede ser negativa')
# ...
Los Falsy & Truthy son expresiones resumidas de las expresiones booleans, la idea es muy básica, algunas expresiones del lenguaje evalúan a False (Falsy values) mientras que otras evalúan a True (Truthy), para mas detalle pueden leer este artículo
Secuencias y Colecciones:
[]
()
{}
set()
""
range(0)