Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Desafío: Automatización del Control de Inventario | Bucles
Introducción a Python

book
Desafío: Automatización del Control de Inventario

Estás gestionando el inventario de una tienda de comestibles y tu tarea es asegurarte de que el stock de cada producto se mantenga correctamente y se reponga cuando sea necesario.

Si el nivel de stock de un artículo cae por debajo de la cantidad mínima requerida, debe reponerse.

Además, si el nivel de stock de un artículo supera cierto umbral, se aplica un descuento y el artículo se marca como "en oferta".

Tarea

Swipe to start coding

Gestionar el inventario de una tienda de comestibles reponiendo artículos y aplicando descuentos según los niveles de existencias. Utilizarás bucles para actualizar el estado de cada artículo.

  • Utiliza un bucle for para recorrer cada artículo en el diccionario inventory.
    • Para cada artículo, obtén su stock actual, el stock mínimo requerido, la cantidad de reposición y el estado de oferta.
  • Utiliza un bucle while para reponer el artículo hasta que su stock sea igual o superior al mínimo. Aumenta el stock en la cantidad de reposición en cada iteración.
  • Después de reponer, verifica si el stock supera discount_threshold y el artículo aún no está en oferta. Si es así, establece su estado de oferta en True.
  • Si el artículo ya está en oferta y sigue superando el umbral, imprime un mensaje indicando que ya tiene descuento.

Requisitos de salida

  • Para cada artículo, imprime:
    Processing <item>...
  • Si se aplica un descuento:
    <item> stock has exceeded <discount_threshold> units. Discount applied.
  • Si el artículo ya está en oferta:
    <item> is already discounted.
  • Después de procesar todos los artículos, imprime:
    Final Inventory Report
    Luego, para cada artículo:
    <Item>: <current_stock> units (Min: <min_stock> units) - On sale: <on_sale>

Solución

# Initialize the inventory dictionary with stock details
inventory = {
"Bread": [30, 50, 10, False], # "Item": [current stock, minimum stock, restock quantity, on sale (True/False)]
"Eggs": [120, 200, 40, False],
"Milk": [60, 100, 20, False],
"Apples": [15, 50, 15, False]
}

# Set the stock threshold for applying discounts
discount_threshold = 100

# Process each item
for item in inventory:
print(f"Processing {item}...")
current_stock, min_stock, restock_amount, on_sale = inventory[item]
# Restock using while loop
while current_stock < min_stock:
current_stock += restock_amount
# Check for discount condition
if current_stock > discount_threshold:
if not on_sale:
inventory[item][3] = True
print(f"{item} stock has exceeded {discount_threshold} units. Discount applied.")
else:
print(f"{item} is already discounted.")
# Update the stock in the dictionary
inventory[item][0] = current_stock

# Final Report
print("\nFinal Inventory Report")
for item in inventory:
stock, min_required, _, on_sale = inventory[item]
print(f"{item}: {stock} units (Min: {min_required} units) - On sale: {on_sale}")

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 5. Capítulo 7
single

single

# Initialize the inventory dictionary with stock details
inventory = {
"Bread": [30, 50, 10, False], # "Item": [current stock, minimum stock, restock quantity, on sale (True/False)]
"Eggs": [120, 200, 40, False],
"Milk": [60, 100, 20, False],
"Apples": [15, 50, 15, False]
}

# Set the stock threshold for applying discounts
discount_threshold = 100

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

some-alt