получить границы DST данного часового пояса в python

Можно ли получить границы DST данного часового пояса с помощью pytz?

  • неожиданные результаты, преобразующие таймеры в python
  • Как добавить часовой пояс в наивный экземпляр datetime в python
  • Проблема с python / pytz Преобразование из локального часового пояса в UTC, затем обратно
  • Модуль pytz уже импортирован
  • Как настроить системный часовой пояс и передать его в pytz.timezone?
  • Не удалось найти версию, удовлетворяющую требованию pytz
  • Объект datetime Python показывает неправильное смещение часового пояса
  • pytz.timezone показывает странные результаты для Азии / Калькутты?
  • One Solution collect form web for “получить границы DST данного часового пояса в python”

    Кажется, что это официально не поддерживается. Тем не менее, вы можете DstTzInfo внутренности объекта DstTzInfo и получить его оттуда:

     >>> from pytz import timezone >>> tz = timezone('Europe/London') >>> tz._utc_transition_times [datetime.datetime(1, 1, 1, 0, 0), datetime.datetime(1916, 5, 21, 2, 0), ... datetime.datetime(2036, 3, 30, 1, 0), datetime.datetime(2036, 10, 26, 1, 0), datetime.datetime(2037, 3, 29, 1, 0), datetime.datetime(2037, 10, 25, 1, 0)] 

    Каждая запись соответствует записи в _transition_info :

     >>> tz._transition_info [(datetime.timedelta(0), datetime.timedelta(0), 'GMT'), (datetime.timedelta(0, 3600), datetime.timedelta(0, 3600), 'BST'), ... (datetime.timedelta(0, 3600), datetime.timedelta(0, 3600), 'BST'), (datetime.timedelta(0), datetime.timedelta(0), 'GMT'), (datetime.timedelta(0, 3600), datetime.timedelta(0, 3600), 'BST'), (datetime.timedelta(0), datetime.timedelta(0), 'GMT')] 

    И источник говорит нам, что это означает:

     _utc_transition_times = None # Sorted list of DST transition times in UTC _transition_info = None # [(utcoffset, dstoffset, tzname)] corresponding # to _utc_transition_times entries 

    Конечно, это зависит от реализации, и вы, вероятно, захотите зависеть от определенных версий pytz, которые, как известно, работают.

    Python - лучший язык программирования в мире.