Причина, по которой ваш код не работает, заключается в том, что строковый шаблон %Y-%m-%dT%H:%M:%SZ
не соответствует представлению даты в переменной results[0].create_date
. datetime.strptime
пытается сопоставить данную строку с форматом, указанным вами для извлечения объекта даты и времени. В этом может помочь изменение форматера, но у вас могут возникнуть проблемы с PDT
.
Я предлагаю использовать модуль dateutil.parser. Вы можете сделать следующее:
import dateutil.parser
x = parser.parse(results[0].create_date)
print x
>>> 2018-04-26 22:51:49
Возвращает объект datetime, и вы можете отформатировать его так, как хотите, чтобы включить «T» и «Z», как вы предложили в своем вопросе.
ПРИМЕЧАНИЕ: Я сделал это, основываясь на ваших данных и желаемых результатах. Однако вы должны знать, что Thu Apr 26 22:51:49 PDT 2018 in UTC
не равно 2018-04-26T22:51:49Z
, поскольку PDT на 7 часов отстает от UTC.