Menu
Coddy logo textTech

Обновление остатков

Часть раздела Logic & Flow путешествия по Python на Coddy — урок 69 из 78.

challenge icon

Задание

Легко

Создайте функцию с именем update_stock, которая принимает два аргумента: item (string) и quantity (int). Функция должна:

  1. Проверить, существует ли товар в словаре inventory.
    • Если он не существует, вывести "Error: Item '<item>' not found.".
  2. Если товар существует, рассчитать новый запас, добавив quantity к текущему запасу.
    • Если новый запас отрицательный, вывести "Error: Insufficient stock for '<item>'." и не выполнять обновление.
    • В противном случае обновить запас в inventory.
  3. Вывести "Stock for '<item>' updated successfully.".

Добавьте (замените) следующий блок кода в конце вашего кода:

add_item("Apple", 0.5, 100)
add_item("Banana", 0.2, 50)
add_item("Apple", 0.6, 30)  # Должно вывести ошибку
update_stock("Apple", -20)
update_stock("Banana", 30)
update_stock("Orange", 10)  # Должно вывести ошибку
update_stock("Apple", -90)
print(inventory)  

Попробуйте сами

inventory = {}

def add_item(item, price, stock):
    if item in inventory:
        print(f"Error: Item '{item}' already exists.")
        return
    try:
        inventory[item] = {"price": float(price), "stock": int(stock)}
        print(f"Item '{item}' added successfully.")
    except ValueError:
        print("Error: Price and stock must be numeric.")


add_item("Apple", 0.5, 100)
add_item("Banana", 0.2, 50)
add_item("Apple", 0.6, 30)  # Should print an error
print(inventory)  

Все уроки раздела Logic & Flow