При использованииСинтаксические длинная строка в DateTime
import datetime
s = 'Sat Apr 23 2016 00:00:00 GMT+0100'
print datetime.datetime.strptime(s, "%a %m %d %y %H:%M:%S GMT+0100")
я получаю:
ValueError: time data 'Sat Apr 23 2016 00:00:00 GMT+0100' does not match format '%a %m %d %y %H:%M:%S GMT+0100'
Как разобрать такую строку?
Примечание: Использование dateutil.parser.parse
не получилось: он произвел некоторые странные datetime
объект, который я мог не вычитают с другим DateTime, т.е. d1 - d2
не работал.
Что значит, вы не могли бы вычесть объект datetime из другого? Каково было сообщение об ошибке? Я не могу придумать какой-либо режим отказа, который помешал бы вам вычесть два времени. – Paul
Не рекомендую использовать синтаксический анализатор dateutil для известного формата, но FYI, я подозреваю, что проблема заключается в том, что анализатор дает вам объект с информацией о часовом поясе. Если вы хотите вычесть другое datetime, вы либо хотите, чтобы оба они были осведомлены о часовом поясе или оба были родными. Лучше всего просто конвертировать оба в UTC для абсолютных временных разниц. – Paul