datetime и timezone с pytz-mind blowing behavior

Я пытаюсь преобразовать объект datetime к часовому поясу, к UTC, а затем вернуться к его исходному часовому поясу. У меня есть следующий фрагмент

 t = datetime( 2013, 11, 22, hour=11, minute=0, tzinfo=pytz.timezone('Europe/Warsaw') ) 

теперь в ipython:

 In [18]: t Out[18]: datetime.datetime( 2013, 11, 22, 11, 0, tzinfo=<DstTzInfo 'Europe/Warsaw' WMT+1:24:00 STD> ) 

и теперь давайте попробуем сделать преобразование в UTC и обратно. Я ожидаю, что будет иметь такое же представление, как:

 In [19]: t.astimezone(pytz.utc).astimezone(pytz.timezone('Europe/Warsaw')) Out[19]: datetime.datetime( 2013, 11, 22, 10, 36, tzinfo=<DstTzInfo 'Europe/Warsaw' CET+1:00:00 STD> ) 

Но мы видим, что Out[18] и Out[19] различаются. Что происходит?

One Solution collect form web for “datetime и timezone с pytz-mind blowing behavior”

Документация http://pytz.sourceforge.net/ заявляет: «К сожалению, использование аргумента tzinfo стандартных конструкторов datetime не работает» с pytz для многих часовых поясов ». Код

 t = datetime( 2013, 5, 11, hour=11, minute=0, tzinfo=pytz.timezone('Europe/Warsaw') ) 

не работает в соответствии с этим, вместо этого вы должны использовать метод localize:

 t = pytz.timezone('Europe/Warsaw').localize( datetime(2013, 5, 11, hour=11, minute=0)) 
  • Показывать символ: в смещении часового пояса с использованием datetime.strftime
  • Как получить первое datetime дня?
  • python - дата и время с часовым поясом до эпохи
  • Как проверить, локализован ли объект datetime с помощью pytz?
  • Как обрабатывать время с часовым поясом в Matplotlib?
  • Преобразовать datetime UTC в python в локальное datetime, используя только стандартную библиотеку python?
  • Как установить часовой пояс в Django?
  • Изменение часового пояса по существующему проекту Django
  •  
    Interesting Posts for Van-Lav
    Python - лучший язык программирования в мире.