Бот записи без сети · Шаг 3 из 4
Что предложить
Бот должен предлагать только то время, на которое правда можно приехать. У Валеры рабочий день с девяти до шести, машину он записывает на час, а с часу до двух — обед, тут без вариантов.
Зато подъёмников в боксе два: в одно и то же время Валера с напарником принимают две машины. Занятым окно становится, только когда на него записаны обе.
Что сделать
По уже сделанным записям скажите, какое время на каждый из дней ещё свободно.
Что приходит
zapisi— записи: словари{"chat": "Олег", "den": "03.12", "vremya": "10:00", "usluga": "ТО"}dni— на какие дни считать, по порядку:["03.12", "04.12"]
Что вернуть
Словарь «день → список свободного времени» в порядке dni, время по порядку: {"03.12": ["09:00", "11:00"]}.
Допишите функцию okna в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
В проекте
Бот зовёт okna на каждое сообщение — с записями из файла и ближайшими рабочими днями — и отдаёт словарь шагу 2. Решите шаг — и бот перестанет предлагать занятое время.
zapisi = [
{"chat": "Олег", "den": "03.12", "vremya": "10:00", "usluga": "ТО"},
{"chat": "Ира", "den": "03.12", "vremya": "10:00", "usluga": "шиномонтаж"},
]
okna(zapisi, ["03.12"])
{'03.12': ['09:00', '11:00', '12:00', '14:00', '15:00', '16:00', '17:00']}
Машину записывают на час, начало — ровно в час: 09:00, 10:00 … 17:00 (в 17:00 приезжают последние — к шести готово). В 13:00 записи нет — обед.
Подъёмников два: время свободно, пока на этот день и это время записано меньше двух машин. Записи на другие дни, которых нет в dni, не мешают.
В ответе — каждый день из dni, в их порядке, даже если свободного времени у него нет (тогда — пустой список). Время — строками ЧЧ:ММ, по порядку.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.