60b90c1c13067a15887e1ae1,Herbed Baked Salmon,4 лимона,1 большой редкий ион,2 tablespoons chopped fresh basil
60b90c2413067a15887e1ae2,Lemon Pancakes,2 tablespoons baking powder,1 cup vanilla-flavored mandle milk,1 lemon
60b90c2e13067a15887e1ae3,Chicken and Cold Noodles,6 ounces dry Chinese noodles,1 tablespoon sesame oil,3 tablespoons soy sauce
60b90c3b13067a15887e1ae4,Watermelon Cucumber Salad,1 большой семечки watermelon,12 leaves fresh mint,1 cup crumbled feta cheese
60b90c4613067a15887e1ae5,State Fair Lemonade,6 lemons,1 cups white sugar,5 cups cold water
Каждый рецепт записан с новой строки (не забываем при решении задачи о конце строки). Каждая запись начинается с первоначального ключа базы данных MongoDB. Далее через запятую, идет название рецепта, а затем через запятую, идет перечень ингредиентов рецепта.
Вам необходимо реализовать функцию, которая будет получать информацию о рецепте в виде словаря для каждого ищущего блюда. Создайте функцию get_recipe(path, search_id), которая будет возвращать словарь для рецепта с указанным идентификатором MongoDB.
Где параметры функции:
path – путь к файлу.
search_id – первичный ключ MongoDB для поиска рецепта
Требования:
Используйте менеджер контекста with для чтения из файла
Если рецепта с указанным search_id в файле нет, функция должна вернуть None
Пример: для указанного выше файла вызов функции в виде
get_recipe(“./data/ingredients.csv”, “60b90c3b13067a15887e1ae4”)
Должен найти в файле строку 60b90c3b13067a15887e1ae4,Watermelon Cucumber Salad,1 large seedless watermelon,12 leaves fresh mint,1 cup crumbled feta cheese и вернуть результат в виде словаря такой структуры:
{
“id”: “60b90c3b13067a15887e1ae4”,
“name”: “Watermelon Cucumber Salad”,
“ingredients”: [
“1 большой семечки без воды”,
“12 leaves fresh mint”,
“1 cup crumbled feta cheese”,
],
}
Кто может обьяснить мне логику написания кода????А то столько текста уже перегружена голова.
Мой код :
def get_recipe(path, search_id): res = [] with open(path, 'r') as fh: for i in fh.read().split(): search_id = i.split(",") dct={"id": search_id[0], "name": search_id[1], "ingredients": search_id[2]} res.append(dct) print(res) return res