Сценарий таков: с учетом совершенно произвольной даты начала в UTC происходит событие, которое повторяется каждые 24 часа.Мне нужно рассчитать, учитывая текущее местное время, сколько времени осталось до следующего события.
В идеале идеальная функция будет делать:
time_since_start = now - start_time
remaining_seconds = time_remaining(time_since_start)
РЕДАКТИРОВАТЬ: некоторые пояснения.start_time
определяет «эпоху», глобальное время начала, с которого событие начало повторяться.Во-вторых, now
- произвольное время, возникающее после start_time
, local .
Проблема не в том, чтобы вычислить возникновение следующего события (которое будет просто прибавлять 24 часа к start_time
), но если я выберу время, которое находится между одним событием и другим, сколько времени осталосьдо следующего события.
Я бы выбрал секунды, так как их можно быстро разбить на дни, минуты и часы.Использование datetime
было бы предпочтительным (но не обязательным) по сравнению с другими сторонними модулями, так как я пытаюсь уменьшить количество зависимостей.
Я пытался использовать datetime
и timedelta
, но разницавсегда неверно.Каков наилучший способ продолжить там?