dateutil и pytz дают разные результаты

У меня есть проблема, сравнивая результаты сdateutil а такжеpytz, Я'Я создаю осведомленный объект даты и времени (UTC), а затем конвертирую в заданный часовой пояс, но я получаю разные ответы. Я подозреваю, что dateutil иногда дает неправильные результаты, потому что у него есть проблемы с учетом летнего времени (по крайней мере, я прочитал комментарий об этом), но я могу 'Найти подтверждение или исправить эту проблему. Это код:

import dateutil

u = dateutil.tz.tzutc()
date1 = datetime.datetime(2010, 5, 2, 11, 10, tzinfo=u)
# 2010-05-02 11:10:00+00:00

u2 = dateutil.tz.gettz('America/Chicago')
date2 = datetime.datetime(2010, 5, 2, 11, 10, tzinfo=u2)
# 2010-05-02 11:10:00-05:00


import pytz
u = pytz.timezone('UTC')
date1 = datetime.datetime(2010, 5, 2, 11, 10, tzinfo=u)

# 2010-05-02 11:10:00+00:00
u2 = pytz.timezone('America/Chicago')
date2 = datetime.datetime(2010, 5, 2, 11, 10, tzinfo=u2)

# 2010-05-02 11:10:00-06:00

Итак, в чем может быть проблема здесь?

ОБНОВИТЬ:

Я только что попробовал это:

print u2.normalize(date1.astimezone(u2))
# 2010-05-02 06:10:00-05:00

Так надо пыцnormalize считать ДСТ?

ОБНОВЛЕНИЕ 2:

Казалось, как будто Pytz и Dateutil нене могу дать ответ для Америки / Аргентины / San_Luis, но это работает:

import pytz, dateutil, datetime

now = datetime.datetime.now() 

for zone in pytz.all_timezones:
    utc_dateutil = dateutil.tz.tzutc()
    utcdate_dateutil = datetime.datetime(now.year, now.month, now.day, now.hour, now.minute, tzinfo=utc_dateutil)
    zone_dateutil = dateutil.tz.gettz(zone)
    newzone_dateutil = utcdate_dateutil.astimezone(zone_dateutil)

    utc_pytz = pytz.timezone('UTC')
    utcdate_pytz = datetime.datetime(now.year, now.month, now.day, now.hour, now.minute, tzinfo=utc_pytz)
    zone_pytz = pytz.timezone(zone)
    newzone_pytz = utcdate_pytz.astimezone(zone_pytz)
    assert newzone_dateutil == newzone_pytz

Я что-то пропустил?

Спасибо

Ответы на вопрос(1)

Ваш ответ на вопрос