Подтвердить что ты не робот

Проблема с часовым поясом с pytz

>>> import pytz
>>> pytz.timezone('Asia/Hong_Kong')
<DstTzInfo 'Asia/Hong_Kong' LMT+7:37:00 STD>

Задержка в семь и 37 минут? Это немного странно, кто-нибудь испытывает ту же проблему?

На самом деле я получаю различное поведение между

import pytz
from datetime import datetime
hk = pytz.timezone('Asia/Hong_Kong')

dt1 = datetime(2012,1,1,tzinfo=hk)
dt2 = hk.localize(datetime(2012,1,1))
if dt1 > dt2:
   print "Why?"
4b9b3361

Ответ 1

Временные зоны и смещения меняются с годами. По умолчанию имя зоны и смещение, когда pytz создает объект часового пояса, являются самыми ранними из доступных для этой зоны, и иногда они могут казаться странными. Когда вы используете localize для привязки зоны к дате, заменяются имя и смещение зоны. Простое использование конструктора datetime для прикрепления зоны к дате не позволяет правильно ее отрегулировать.