pytz и Etc / GMT-5

У меня проблемы с пониманием преобразования часового пояса Etc / GMT-5 в UTC в pytz.

>>> dt = datetime(2009, 9, 9, 10, 0) # September 9 2009, 10:00
>>> gmt_5 = pytz.timezone("Etc/GMT-5")
>>> gmt_5.localize(dt)
datetime.datetime(2009, 9, 9, 10, 0, tzinfo=<StaticTzInfo 'Etc/GMT-5'>)

Пока все в порядке, но затем я пытаюсь преобразовать это в UTC:

>>> gmt_5.localize(dt).astimezone(pytz.utc)
datetime.datetime(2009, 9, 9, 5, 0, tzinfo=<UTC>)

Итак, мне кажется, что при преобразовании с 10:00 по GMT-5 в UTC я получаю 05:00? Я ожидал, что pytz вместо этого выдаст мне 15:00.

Что мне не хватает?

РЕДАКТИРОВАТЬ: Я подтвердил, что преобразование часового пояса для американского / восточного часового пояса работает так, как я ожидал:

>>> eastern = pytz.timezone("US/Eastern")
>>> eastern.localize(dt)
datetime.datetime(2009, 9, 9, 10, 0, tzinfo=...) # Too long
>>> pytz.utc.normalize(eastern.localize(dt).astimezone(pytz.utc))
datetime.datetime(2009, 9, 9, 14, 0, tzinfo=<UTC>)

РЕДАКТИРОВАТЬ 2: Я подтвердил, что при использовании Etc / GMT + 5 я получаю 15:00, что я и ожидал получить от Etc / GMT-5. Это ошибка pytz?

7
задан Deniz Dogan 24 October 2010 в 16:13
поделиться