Преобразование строки к отформатированной строке даты и времени с помощью 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'

Очевидно, я сделал ошибку: время является неправильным, это - объект даты и времени! Это имеет дату и компонент времени!

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

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

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

22
задан sth 22 June 2011 в 21:24
поделиться

2 ответа

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 декабря 2009 г. (UTC)

12
ответ дан 29 November 2019 в 03:59
поделиться

Для объектов 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)
41
ответ дан 29 November 2019 в 03:59
поделиться
Другие вопросы по тегам:

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