CSV и JSON · 10 из 13
Отчёт по дням
Задействованы также: Вложенные структуры, Файлы
Вера хочет видеть по каждому дню выручку и самый ходовой напиток. Выгрузка идёт за месяц одним файлом.
Что сделать
Посчитайте по каждому дню месяца выручку и самый ходовой напиток.
Что приходит
imya— имя CSV-файла со столбцами «дата», «напиток», «количество», «цена»
Что вернуть
Словарь «дата → {"выручка": …, "хит": …}» по возрастанию дат; хит — больше всего порций, при равенстве — первый по алфавиту.
Допишите функцию po_dnyam в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
1 января продали 2 латте по 180 и 5 чаёв по 90: выручка 360 + 450 = 810, а порций больше у чая. Ответ — {"2026-01-01": {"выручка": 810, "хит": "чай"}}.
with open("m.csv", "w", encoding="utf-8", newline="") as f:
f.write("дата,напиток,количество,цена\n2026-01-01,латте,2,180\n2026-01-01,чай,5,90\n")
po_dnyam('m.csv')
{'2026-01-01': {'выручка': 810, 'хит': 'чай'}}
Функция принимает имя CSV со столбцами «дата», «напиток», «количество», «цена». Возвращает словарь: дата — словарь с ключами «выручка» (сумма количество умножить на цену) и «хит» (напиток с наибольшим числом порций за этот день, при равенстве — раньше по алфавиту). Дни идут в порядке возрастания даты. Строки с неразбираемыми числами пропускаются. Дни без разобранных строк в ответ не попадают.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.