zencd
@zencd

Парсинг datetime в UTC с информацией о таймзоне

Есть строка с «наивной» локальной датой вида 2008-09-17 14:04:00. Нужно её распарсить в UTC datetime с включённой информацией о таймзоне. (Конечная задача — распечатать дату с суффиксом вроде UTC / UTC+04 через %Z, %z).

Вот такой несложный код выдаёт дату на 4 часа больше (меньше) чем было изначально — всё правильно. Но информации о временной зоне такой объект не содержит. По крайней мере %Z с %z выдают пустоту.

dt = datetime.strptime("2008-09-17 14:04:00","%Y-%m-%d %H:%M:%S")
utc_struct_time = time.gmtime(time.mktime(dt.timetuple()))
utc_dt = datetime.fromtimestamp(time.mktime(utc_struct_time))
print dt.strftime("%Y-%m-%d %H:%M:%S")


Библиотеками типа pytz пользоваться не хочется — задача-то уже, считай, решена. Да и осилят ли они такую сложноту — мне пока неизвестно.
  • Вопрос задан
  • 2692 просмотра
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы