Всегда ли день длится 86400 секунд эпохи?

Просматривая свои предыдущие ответы, я заметил, что предлагал код, например this :

import time

def dates_between(start, end):
  # muck around between the 9k+ time representation systems in Python
  # now start and end are seconds since epoch

  # return [start, start + 86400, start + 86400*2, ...]
  return range(start, end + 1, 86400)

Перечитывая этот фрагмент кода, я не мог не чувствую жуткое прикосновение Тони Пони к моему позвоночнику, нежно бормочущего «високосные секунды» в мои уши и другие такие ужасные, ужасные вещи.

Когда ломается допущение «день длится 86 400 секунд» для определения «секунды» эпохи, если вообще? (Я предполагаю, что такие функции, как Python time.mktime , уже возвращают значения с поправкой на летнее время, поэтому приведенный выше фрагмент также должен работать в дни переключения на летнее время ... Надеюсь?)

38
задан Community 23 May 2017 в 12:17
поделиться