Expresiones Condicionales
En este capítulo, profundizamos en uno de los aspectos más fundamentales de la programación en Python: las expresiones condicionales usando los operadores if
, else
y elif
.
Estos operadores te permiten ejecutar diferentes bloques de código basados en condiciones específicas, dándote el poder de tomar decisiones dentro de tus programas de manera dinámica. Comprender estas expresiones es crucial para desarrollar aplicaciones que puedan reaccionar a diversas entradas y situaciones de manera efectiva.
Mira cómo Alex demuestra la versatilidad de estas expresiones condicionales:
La declaración if
evalúa una condición y ejecuta un bloque de código si la condición es True
. Si la condición no es True
, las declaraciones else
y elif
(abreviatura de "else if") pueden especificar condiciones adicionales para verificar y ejecutar diferentes códigos en consecuencia.
Así es como funcionan:
if
La declaración condicional principal evalúa si una condición es True
. Inicia una secuencia condicional. Las declaraciones if
solo pueden aparecer una vez al inicio de una secuencia. Si la condición se evalúa como True
, el bloque de código indentado que sigue a la declaración if
se ejecutará.
elif
Abreviatura de "else if", la declaración elif
proporciona condiciones adicionales para verificar si la condición inicial if
o cualquier condición elif
precedente fue False
. Puedes incluir múltiples declaraciones elif
después de una declaración if
para manejar varios escenarios, cada uno con su propia condición.
else
Actúa como un recurso para todos los casos no específicamente abordados por las condiciones if
y elif
precedentes. Solo puede haber una declaración else
al final de una secuencia de declaraciones if
, y no requiere una condición.
Aplicaciones de Ejemplo
Comencemos con una simple declaración if
/ else
para tomar una decisión basada en una sola condición. Aquí, estamos tratando de determinar si un artículo de supermercado necesita ser reabastecido en función de su nivel de stock actual:
# Stock level of an item stock_level = 15 # Simple `if`/`else` to check stock levels if stock_level < 20: print("Stock is low") else: print("Stock is okay")
Este diagrama de flujo demuestra los caminos de decisión que tomaría tu intérprete de Python en el ejemplo anterior de if-else
:
A continuación, utilicemos la declaración elif
en una aplicación un poco más compleja. En esta aplicación, usamos declaraciones if
/ elif
/ else
para aplicar tasas de descuento basadas en los costos totales para fomentar ventas más grandes.
# Initial conditions totalCost = 150 # Applying discounts based on purchase amount if totalCost >= 200: print("20% discount applied") elif totalCost >= 100: print("10% discount applied") else: print("No discount for purchases under $100")
Este diagrama de flujo visualiza el proceso de aplicar descuentos basados en el costo total usando declaraciones if
, elif
, else
:
En la próxima aplicación, introducimos condiciones if-else
anidadas para demostrar un proceso de toma de decisiones más granular. Al incrustar una estructura if-else
dentro de otra, podemos tomar una serie de decisiones basadas en múltiples criterios.
Este ejemplo práctico ilustra cómo una tienda de comestibles podría gestionar el inventario basado en el tipo de producto y condiciones específicas, como días desde la entrega o niveles de stock.
# Initial conditions product = 'Non-Perishable' stock = 70 # Determine the handling of products based on type and condition if product == 'Perishable': if daysDelivered >= 4: print("Not fresh - Initiate discount") else: print("Product is fresh") elif product == 'Non-Perishable': if stock > 100: print("Consider discount") else: print("No discount needed") else: print("The product is not specified")
El siguiente diagrama de árbol de decisiones representa visualmente la lógica anidada if-else
utilizada en el ejemplo de código anterior:
Algunas Notas de Sintaxis
Al escribir declaraciones condicionales en Python, es esencial adherirse a reglas de sintaxis específicas. Es posible que hayas notado el papel crítico de los dos puntos :
y la indentación en la creación de condiciones ejecutables.
Examinemos el papel que juegan estos pequeños detalles:
Dos Puntos
Piensa en el dos puntos al final de una declaración if
, elif
o else
como una señal que dice, "Aquí está lo que hacer a continuación si la condición que acabo de mencionar es verdadera." El dos puntos actúa como un poste indicador, marcando claramente dónde comienzan las instrucciones.
Indentación
Cuando la condición sobre un bloque de código indentado es True
, todas las líneas de código indentadas debajo de ella se ejecutan. Si no es True
, Python omite estos pasos y busca la siguiente condición.
Aunque estos pueden parecer detalles menores, son cruciales para asegurar que tu código se ejecute correctamente. A medida que te familiarices más con Python, estas prácticas se volverán naturales.
¡Fantástico trabajo al comprender estos aspectos fundamentales de Python! Tu comprensión de cómo estructurar correctamente las declaraciones de control establece una base sólida para abordar tareas de programación más complejas. Ahora, pongamos a prueba tus nuevas habilidades con un desafío integral que te permitirá aplicar lo que has aprendido en un escenario práctico.
Swipe to start coding
En esta tarea, crearás un sistema simple de estrategia de descuentos para una tienda de comestibles utilizando declaraciones condicionales. El sistema aplicará diferentes descuentos según el tipo de producto y el día de la semana.
Instrucciones de Código
- Comienza utilizando las variables de entrada proporcionadas
product_type
yday_of_week
. - Implementa una serie de declaraciones condicionales para verificar los siguientes escenarios:
- Si el
product_type
es"Fruits"
y elday_of_week
es"Monday"
, imprime un mensaje indicando un 10% de descuento en frutas. - Si el
product_type
es"Vegetables"
y elday_of_week
es"Tuesday"
, imprime un mensaje indicando un 15% de descuento en vegetales. - Si el
product_type
es"Dairy"
y elday_of_week
es"Wednesday"
, imprime un mensaje indicando un 20% de descuento en productos lácteos. - Si el
product_type
es"Other"
, imprime un mensaje indicando que no hay descuento disponible. - Usa una declaración
else
para manejar cualquier otro caso donde el tipo de producto o el día no coincidan con las condiciones especificadas.
- Si el
Requisitos de Salida
- Para cada condición que se cumpla, imprime un mensaje indicando el porcentaje de descuento y el tipo de producto, en formato como
"10% discount on Fruits today!"
. - Si el tipo de producto es
"Other"
, imprime"No discount available."
- Si ninguna de las condiciones se cumple, imprime
"No special discounts today."
Solución
¡Gracias por tus comentarios!