| time zone |
[05 Dec 2012|03:56pm] |
Хочу разобраться как работают с таймзонами в python.
Команда date "+%Y-%m-%d_%H-%M-%S_%z" выводит правильное локальное время и правильную таймзону: 2012-12-05_19-57-37_+0400
Если использовать python -c 'import datetime, time ; date_time = datetime.datetime.now() ; print date_time.strftime("%Y-%m-%d_%H-%M-%S_%z")' то печатается пустая строка вместо %z. 2012-12-05_15-59-58_
Как портируемым образом отформатировать объект datetime как локальное время с таймзоной? Или придётся отказаться от datetime в пользу модуля time? В time тоже не всё впорядке - time.strftime('%Y-%m-%d_%H-%M-%S_%z', time.localtime()) пишет время в GMT, не местное, и почему-то вместо числового смещения - название зоны: '2012-12-05_16-04-23_Eur'
У меня голова кругом, кажется в области работы с timezone питон не питон :/
upd: наверное проще всего взять таймзону из time.timezone или вычислить как t = time(); int(mktime(localtime(t)) - mktime(gmtime(t)))
|
|