Python datetime strptime () и strftime (): как сохранить информацию о часовом поясе

Смотрите следующий код:

import datetime
import pytz

fmt = '%Y-%m-%d %H:%M:%S %Z'

d = datetime.datetime.now(pytz.timezone("America/New_York"))
d_string = d.strftime(fmt)
d2 = datetime.datetime.strptime(d_string, fmt)
print d_string 
print d2.strftime(fmt)

выход

2013-02-07 17:42:31 EST
2013-02-07 17:42:31 

Информация о часовом поясе просто потерялась при переводе.

Если я переключу "% Z" на "% z", я получу

ValueError: 'z' is a bad directive in format '%Y-%m-%d %H:%M:%S %z'

Я знаю, что могу использоватьpython-dateutil, но я просто обнаружил, что это странно, что я не могу достичь этой простой функции в datetime и должен вводить больше зависимости?

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

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