Если я конвертирую UTC datetime в шведский формат, включается летнее время (CEST). Однако, создавая datetime с sweden в качестве часового пояса, он получает CET вместо CEST. Почему это?Python datetime не включая DST при использовании часового пояса pytz
>>> # Modified for readability
>>> import pytz
>>> import datetime
>>> sweden = pytz.timezone('Europe/Stockholm')
>>>
>>> datetime.datetime(2010, 4, 20, 16, 20, tzinfo=pytz.utc).astimezone(sweden)
datetime(2010, 4, 20, 18, 20, tzinfo=<... 'Europe/Stockholm' CEST+2:00:00 DST>)
>>>
>>> datetime.datetime(2010, 4, 20, 18, 20, tzinfo=sweden)
datetime(2010, 4, 20, 18, 20, tzinfo=<... 'Europe/Stockholm' CET+1:00:00 STD>)
>>>
благодарит за информацию! Кроме того, функция локализации объекта pytz.timezone может использоваться для построения локализованного datetime вместо datetime (..., tzinfo =) –
Jesper
@Jesper: [pytz docs] (http://pytz.sf.net)) явно говорят использовать .localize() вместо конструктора datetime с параметром tzinfo для часового пояса с DST. – jfs