/
Alex_Ural
/
PYAPI_Homework
Обзор
Документация
Войти
/
Alex_Ural
/
PYAPI_Homework
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
PYAPI_Task2.py
49 строк
2 KB
Alex_Ural
create: PYAPI_Task2.py
21 апр 2026, 16:51
Верифицирован
21 апр 2026, 16:51
ec91957
Код
Авторство
О чём код?
cocktail_recipes = {} with open('cocktails.txt', 'r', encoding='utf-8') as f: for line in f: recipe_name = line.strip() if not recipe_name: continue count = int(next(f).strip()) ingredients = [] for _ in range(count): ing_line = next(f).strip() name, qty, measure = [part.strip() for part in ing_line.split('|')] ingredients.append({'ingredient_name': name, 'quantity': float(qty), 'measure': measure}) cocktail_recipes[recipe_name] = ingredients # Задание 2: def get_shop_list_by_drinks(drinks, person_count): shop_list = {} for drink in drinks: if drink not in cocktail_recipes: continue for ing in cocktail_recipes[drink]: name = ing['ingredient_name'] qty = ing['quantity'] * person_count measure = ing['measure'] if name in shop_list: shop_list[name]['quantity'] += qty else: shop_list[name] = {'measure': measure, 'quantity': qty} return shop_list # === Тест для Задания №2 === order = ['Мохито', 'Апероль Шприц', 'Мохито'] result = get_shop_list_by_drinks(order, 3) print("\n Список закупки:") for name, data in result.items(): print(f" {name}: {data['quantity']} {data['measure']}")