Contenido del Curso
Introducción a Python
Introducción a Python
Bucles While
while
loops son la herramienta clave para manejar la iteración indefinida, lo cual es útil en escenarios donde el número de iteraciones no se conoce de antemano, como monitorear niveles de inventario hasta que alcancen un umbral específico.
Observa cómo Alex demuestra cómo usar while
loops para manejar situaciones dinámicas:
Un while
loop en Python ejecuta continuamente un bloque de código mientras una condición especificada sea True
.
Sintaxis
Para iniciar un while
loop, defines una variable contador y la sigues con la palabra clave while
y una condición booleana. La condición es seguida por dos puntos :
, lo que indica el inicio del bloque de código del loop.
El loop se ejecutará repetidamente hasta que la condición se vuelva False
. Normalmente, la variable contador se actualiza dentro del loop para eventualmente hacer que la condición sea False
y detener el loop.
Toma este while
loop como ejemplo:
# Handling a queue at a grocery store checkout queue_length = 5 # Initial number of people in the queue while queue_length > 0: # Start the `while` loop as long as the queue isn't empty print(f"Current queue size: {queue_length}") # Simulate serving a customer print("Serving the next customer...") # Decrease the queue length by 1 as a customer leaves # The `-=` operator is a shortcut for `queue_length = queue_length - 1` queue_length -= 1
En este ejemplo, queue_length
actúa como nuestra variable contador, comenzando en 5
. Con cada iteración del bucle, el valor de queue_length
disminuye en 1
hasta que alcanza 0
. En ese momento, el bucle termina porque la condición 0 > 0
se evalúa como False
.
Nota
Es crucial actualizar la variable contador dentro del bucle para eventualmente cumplir con la condición para detener el bucle. Sin esto, el bucle se ejecutará infinitamente, impidiendo que cualquier otro código se ejecute.
Aplicación de Ejemplo
Imagina que estás gestionando el stock de leche en una tienda de comestibles. Necesitas asegurarte de que el stock no caiga por debajo de un cierto nivel, y cuando lo haga, debes reabastecer para mantener el nivel de stock.
Un bucle while
es útil en esta situación porque te permite reabastecer leche en incrementos durante varias iteraciones hasta que el stock alcance el nivel deseado. Sin un bucle while
, necesitarías calcular la cantidad exacta de leche para reabastecer todo de una vez.
Por ejemplo, considera que un trabajador de la tienda solo puede reabastecer una cantidad fija de leche en un viaje (por ejemplo, 20
paquetes por reabastecimiento). Si el stock no se repone completamente, el trabajador regresa al almacén para traer otro lote de leche.
# Initial amount of milk in stock milk_stock = 15 # Minimum stock level before restocking is necessary min_stock = 50 # Quantity a worker can restock at one time restock_quantity = 20 # Start the loop to restock milk until the stock exceeds the minimum required level while milk_stock < min_stock: # If the loop is running, the condition is `True`, indicating we need more milk print(f"Milk stock is low: {milk_stock} units remaining.") # Simulate the process of restocking milk print("Restocking milk...") # Increase the stock by the quantity the worker can bring in one trip milk_stock += restock_quantity # Output the final stock level after restocking is complete print(f"Milk stock updated: {milk_stock} units, which is now sufficient.")
Nota
milk_stock += restock_quantity
es equivalente amilk_stock = milk_stock + restock_quantity
. Es simplemente una forma más concisa y legible de expresar la misma operación.
El diagrama de flujo anterior ilustra la lógica detrás del bucle while
utilizado para gestionar el inventario de leche. Observe cómo la variable contador milk_stock
, comenzando en 15
, se incrementa por la restock_quantity
con cada iteración del bucle.
El bucle sigue ejecutándose hasta que milk_stock
supera el umbral de min_stock
de 50
, momento en el cual se detiene.
Swipe to start coding
En esta tarea, gestionarás el inventario de una tienda de comestibles utilizando bucles para asegurar que los productos cumplan con sus niveles mínimos de stock. Trabajarás con tres artículos: Bread
, Eggs
y Apples
. Tu objetivo es actualizar sus niveles de stock utilizando cantidades de reposición almacenadas en un diccionario y luego imprimir el inventario actualizado.
Instrucciones de Código
- Crea un bucle
while
para verificar si el stock de"Bread"
está por debajo de su nivel mínimo requerido. Si es así, aumenta el stock sumando la cantidad de reposición especificada en el diccionario. - De manera similar, configura un bucle
while
para"Eggs"
para verificar si el stock está por debajo del nivel mínimo. Si es necesario, repón sumando la cantidad de reposición especificada. - Aplica la misma lógica a
"Apples"
usando un buclewhile
para asegurar que cumpla con el nivel mínimo de stock. - Después de reponer todos los artículos, itera sobre el diccionario de inventario e imprime los niveles de stock finales para cada artículo.
Requisitos de Salida
- Para cada artículo que se reponga, imprime un mensaje indicando el nivel de stock actual y que se está reponiendo. Por ejemplo:
"<Item> stock is low: <$current_stock> units. Restocking..."
. - Después de completar toda la reposición, imprime el estado final del inventario en el formato:
"<Item>: <$current_stock> units (Minimum required: <$minimum_stock> units)"
. - Usa f-strings para formatear los mensajes de salida y asegúrate de usar comillas simples dentro de cadenas entre comillas dobles para las claves del diccionario.
- Inserta una nueva línea antes de imprimir el estado final del inventario usando la secuencia de escape
\n
.
Nota
El código introduce nuevas formas de formatear cadenas para una mejor legibilidad:
- Dentro de f-strings, se pueden usar comillas simples
'
dentro de cadenas entre comillas dobles. Por ejemplo:f"Bread stock es bajo: {inventory['Bread'][0]} unidades."
. La cadena externa usa comillas dobles, mientras que'Bread'
usa comillas simples para evitar conflictos.- Puedes insertar una nueva línea en la salida usando la secuencia de escape
\n
, como"Primera línea.\nSegunda línea."
que dividirá la salida en dos líneas.
Solución
¡Gracias por tus comentarios!
Bucles While
while
loops son la herramienta clave para manejar la iteración indefinida, lo cual es útil en escenarios donde el número de iteraciones no se conoce de antemano, como monitorear niveles de inventario hasta que alcancen un umbral específico.
Observa cómo Alex demuestra cómo usar while
loops para manejar situaciones dinámicas:
Un while
loop en Python ejecuta continuamente un bloque de código mientras una condición especificada sea True
.
Sintaxis
Para iniciar un while
loop, defines una variable contador y la sigues con la palabra clave while
y una condición booleana. La condición es seguida por dos puntos :
, lo que indica el inicio del bloque de código del loop.
El loop se ejecutará repetidamente hasta que la condición se vuelva False
. Normalmente, la variable contador se actualiza dentro del loop para eventualmente hacer que la condición sea False
y detener el loop.
Toma este while
loop como ejemplo:
# Handling a queue at a grocery store checkout queue_length = 5 # Initial number of people in the queue while queue_length > 0: # Start the `while` loop as long as the queue isn't empty print(f"Current queue size: {queue_length}") # Simulate serving a customer print("Serving the next customer...") # Decrease the queue length by 1 as a customer leaves # The `-=` operator is a shortcut for `queue_length = queue_length - 1` queue_length -= 1
En este ejemplo, queue_length
actúa como nuestra variable contador, comenzando en 5
. Con cada iteración del bucle, el valor de queue_length
disminuye en 1
hasta que alcanza 0
. En ese momento, el bucle termina porque la condición 0 > 0
se evalúa como False
.
Nota
Es crucial actualizar la variable contador dentro del bucle para eventualmente cumplir con la condición para detener el bucle. Sin esto, el bucle se ejecutará infinitamente, impidiendo que cualquier otro código se ejecute.
Aplicación de Ejemplo
Imagina que estás gestionando el stock de leche en una tienda de comestibles. Necesitas asegurarte de que el stock no caiga por debajo de un cierto nivel, y cuando lo haga, debes reabastecer para mantener el nivel de stock.
Un bucle while
es útil en esta situación porque te permite reabastecer leche en incrementos durante varias iteraciones hasta que el stock alcance el nivel deseado. Sin un bucle while
, necesitarías calcular la cantidad exacta de leche para reabastecer todo de una vez.
Por ejemplo, considera que un trabajador de la tienda solo puede reabastecer una cantidad fija de leche en un viaje (por ejemplo, 20
paquetes por reabastecimiento). Si el stock no se repone completamente, el trabajador regresa al almacén para traer otro lote de leche.
# Initial amount of milk in stock milk_stock = 15 # Minimum stock level before restocking is necessary min_stock = 50 # Quantity a worker can restock at one time restock_quantity = 20 # Start the loop to restock milk until the stock exceeds the minimum required level while milk_stock < min_stock: # If the loop is running, the condition is `True`, indicating we need more milk print(f"Milk stock is low: {milk_stock} units remaining.") # Simulate the process of restocking milk print("Restocking milk...") # Increase the stock by the quantity the worker can bring in one trip milk_stock += restock_quantity # Output the final stock level after restocking is complete print(f"Milk stock updated: {milk_stock} units, which is now sufficient.")
Nota
milk_stock += restock_quantity
es equivalente amilk_stock = milk_stock + restock_quantity
. Es simplemente una forma más concisa y legible de expresar la misma operación.
El diagrama de flujo anterior ilustra la lógica detrás del bucle while
utilizado para gestionar el inventario de leche. Observe cómo la variable contador milk_stock
, comenzando en 15
, se incrementa por la restock_quantity
con cada iteración del bucle.
El bucle sigue ejecutándose hasta que milk_stock
supera el umbral de min_stock
de 50
, momento en el cual se detiene.
Swipe to start coding
En esta tarea, gestionarás el inventario de una tienda de comestibles utilizando bucles para asegurar que los productos cumplan con sus niveles mínimos de stock. Trabajarás con tres artículos: Bread
, Eggs
y Apples
. Tu objetivo es actualizar sus niveles de stock utilizando cantidades de reposición almacenadas en un diccionario y luego imprimir el inventario actualizado.
Instrucciones de Código
- Crea un bucle
while
para verificar si el stock de"Bread"
está por debajo de su nivel mínimo requerido. Si es así, aumenta el stock sumando la cantidad de reposición especificada en el diccionario. - De manera similar, configura un bucle
while
para"Eggs"
para verificar si el stock está por debajo del nivel mínimo. Si es necesario, repón sumando la cantidad de reposición especificada. - Aplica la misma lógica a
"Apples"
usando un buclewhile
para asegurar que cumpla con el nivel mínimo de stock. - Después de reponer todos los artículos, itera sobre el diccionario de inventario e imprime los niveles de stock finales para cada artículo.
Requisitos de Salida
- Para cada artículo que se reponga, imprime un mensaje indicando el nivel de stock actual y que se está reponiendo. Por ejemplo:
"<Item> stock is low: <$current_stock> units. Restocking..."
. - Después de completar toda la reposición, imprime el estado final del inventario en el formato:
"<Item>: <$current_stock> units (Minimum required: <$minimum_stock> units)"
. - Usa f-strings para formatear los mensajes de salida y asegúrate de usar comillas simples dentro de cadenas entre comillas dobles para las claves del diccionario.
- Inserta una nueva línea antes de imprimir el estado final del inventario usando la secuencia de escape
\n
.
Nota
El código introduce nuevas formas de formatear cadenas para una mejor legibilidad:
- Dentro de f-strings, se pueden usar comillas simples
'
dentro de cadenas entre comillas dobles. Por ejemplo:f"Bread stock es bajo: {inventory['Bread'][0]} unidades."
. La cadena externa usa comillas dobles, mientras que'Bread'
usa comillas simples para evitar conflictos.- Puedes insertar una nueva línea en la salida usando la secuencia de escape
\n
, como"Primera línea.\nSegunda línea."
que dividirá la salida en dos líneas.
Solución
¡Gracias por tus comentarios!