Обновление остатков
Часть раздела Logic & Flow путешествия по Python на Coddy — урок 69 из 78.
Задание
ЛегкоСоздайте функцию с именем update_stock, которая принимает два аргумента: item (string) и quantity (int). Функция должна:
- Проверить, существует ли товар в словаре
inventory.- Если он не существует, вывести
"Error: Item '<item>' not found.".
- Если он не существует, вывести
- Если товар существует, рассчитать новый запас, добавив
quantityк текущему запасу.- Если новый запас отрицательный, вывести
"Error: Insufficient stock for '<item>'."и не выполнять обновление. - В противном случае обновить запас в
inventory.
- Если новый запас отрицательный, вывести
- Вывести
"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
1Изучение переменных
КонстантыМножественное присваиваниеОбмен значениями переменныхПеременные-заполнителиОкругление чиселПриведение к списку4Приложение «Книга контактов»
Показать менюДобавить контакт7Множества. Часть 2
Математические операции. Часть 1Математические операции. Часть 2Повторение — Охота за сокровищамиПодмножества и надмножестваИтерация по множествамПовторение — Трекер турнира10Базовые генераторы списков
СинтаксисСоздание простых списковДобавление условийИспользование агрегации данныхПовторение — Дом списковПовторение — Элементы свободы13Система управления запасами
Обзор проектаДобавление товара2Словари. Часть 1
Что такое словарь?Создание словаряДоступ к значениямИзменение словарейИтоги — Менеджер рецептов5Продвинутое принятие решений
Тернарный операторПроверка вхожденияПроверка идентичностиОшибки отступовПовторение — Фильтр отпусков8Менеджер записей студентов
Обзор проектаДобавить студента11Продвинутые функции
Возврат нескольких значенийLambda-функции. Часть 1Lambda-функции. Часть 2Задача на повторение — Lambda-сортировкаРекурсивные функции. Часть 1Рекурсивные функции. Часть 2Повторение — сумма вложенного списка14Функции высшего порядка
Функция mapФункция filterПовторение — Валидатор emailПовторение — Обработчик чисел3Словари. Часть 2
Методы словарейВложенные словариПроверка наличия ключейПеребор словарей в циклеПовторение: счетчик частоты6Множества. Часть 1
Что такое множество?Основные операцииМетоды множествПовторение — удаление дубликатов9Продвинутая агрегация данных
Использование SumПоиск минимума и максимумаЭффективная сортировка данныхПовторение — Dictionary Sorter