/
luvpython
/
homework-file
Обзор
Документация
Войти
/
luvpython
/
homework-file
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
Task 1.py
45 строк
2 KB
MAXIM
second commit
29 апр 2026, 20:12
29 апр 2026, 20:12
994f487
Код
Авторство
О чём код?
# with open('recipes.txt', 'r',encoding='utf-8') as f: # while True: # dish_name = f.readline().strip() # if dish_name == '': # break # print(dish_name) from pprint import PrettyPrinter def read_cook_book(recipes): cook_book = {} # создаём пустой словарь для хранения всех блюд with open(recipes, 'r', encoding='utf-8') as file: while True: dish_name = file.readline().strip() # читаем название блюда if not dish_name: # если строка пустая — значит, конец файла break num_ingredients = int(file.readline().strip()) # читаем количество ингредиентов и превращаем в число ingredients_list = [] # временный список для ингредиентов текущего блюда for _ in range(num_ingredients): # цикл по количеству ингредиентов line = file.readline().strip() # читаем одну строку ингредиента parts = line.split(' | ') # разбиваем строку по разделителю " | " ingredient_dict = { 'ingredient_name': parts[0], # имя ингредиента 'quantity': int(parts[1]), # количество (преобразуем из строки в число) 'measure': parts[2] # единица измерения } ingredients_list.append(ingredient_dict) # добавляем словарь ингредиента в список cook_book[dish_name] = ingredients_list # добавляем блюдо в главный словарь file.readline() # пропускаем пустую строку после списка ингредиентов (между блюдами) return cook_book # === Запуск программы === if __name__ == '__main__': cook_book = read_cook_book('recipes.txt') # вызываем функцию и сохраняем результат print(cook_book) # выводим весь словарь на экран