Преобразование строки в форматированную строку даты-времени с использованием Python

Я пытаюсь преобразовать строку «20091229050936» в «05:09 29 декабря 2009 (UTC)»

>>>import time >>>s = time.strptime("20091229050936", "%Y%m%d%H%M%S") >>>print s.strftime('%H:%M %d %B %Y (UTC)') 

дает AttributeError: 'time.struct_time' object has no attribute 'strftime'

Ясно, что я допустил ошибку: время не так, это объект datetime! У него есть дата и время!

 >>>import datetime >>>s = datetime.strptime("20091229050936", "%Y%m%d%H%M%S") 

дает AttributeError: 'module' object has no attribute 'strptime'

Как я хотел преобразовать строку в форматированную строку даты?

5 Solutions collect form web for “Преобразование строки в форматированную строку даты-времени с использованием Python”

Для объектов datetime strptime является статическим методом класса datetime , а не свободной функцией в модуле datetime :

 >>> import datetime >>> s = datetime.datetime.strptime("20091229050936", "%Y%m%d%H%M%S") >>> print s.strftime('%H:%M %d %B %Y (UTC)') 05:09 29 December 2009 (UTC) 

time.strptime возвращает time_struct ; time.strftime принимает параметр time_struct как необязательный параметр:

 >>>s = time.strptime(page.editTime(), "%Y%m%d%H%M%S") >>>print time.strftime('%H:%M %d %B %Y (UTC)', s) 

дает 05:09 29 December 2009 (UTC)

 from datetime import datetime s = datetime.strptime("20091229050936", "%Y%m%d%H%M%S") print("{:%H:%M %d %B %Y (UTC)}".format(s)) 

Вы можете использовать easy_date, чтобы упростить его:

 import date_converter my_datetime = date_converter.string_to_string("20091229050936", "%Y%m%d%H%M%S", "%H:%M %d %B %Y (UTC)") 

Для меня это лучше всего, и он работает и в Google App Engine.

Пример отображения UTC-4

 import datetime UTC_OFFSET = 4 local_datetime = datetime.datetime.now() print (local_datetime - datetime.timedelta(hours=UTC_OFFSET)).strftime("%Y-%m-%d %H:%M:%S") 
  • Является ли конкретный часовой пояс, используя DST прямо сейчас?
  • Как отображать непрерывные данные в окне py-gtk?
  • Как проверить, является ли данный объект datetime «между» двумя датами?
  • Манипуляции столбцами с датами-пандами
  • Способ почти правильно запускать функцию периодически
  • Как получить текущее время в python и разбить на год, месяц, день, час, минуту?
  • Вычисление даты начала, будущего или присутствия в Python
  • Как библиотеки на разных языках программирования обрабатывают Date & Time, Timestamps & Durations, Leapseconds & -ears, DSTs & Timezones, ...?
  • time.sleep требует целых чисел?
  • python time.time () и "Летнее время"
  • Преобразование даты и времени python в timestamp и обратно в UTC по-прежнему использует локальный часовой пояс
  • Python - лучший язык программирования в мире.