#python #python-3.x #datetime #python-datetime
#python #python-3.x #дата и время #python-datetime
Вопрос:
Я пытаюсь использовать strptime
для форматирования имеющейся у меня временной строки, но это выдает ошибку
«ValueError: остаются неконвертированные данные»: без фактического указания, каких данных в нем не хватает
Я не совсем уверен, как решить эту проблему. Вот что я пробовал :
t = 'Tue, 26 Mar 2019 06:25:01 GMT'
def function(t):
timeString = t
date = datetime.datetime.strptime(timeString, '%a, %d %b %Y %H:%M:%s %Z')
Я думаю, возможно, проблема как-то связана с плавающей запятой, которая должна быть там в конце. Буду признателен за любую помощь. Кроме того, любые советы по преобразованию этого в другой часовой пояс были бы замечательными.
Ответ №1:
Вы можете использовать библиотеку dateutil для анализа строки datetime.
Вот пример:
from dateutil import parser
datetime_string = 'Tue, 26 Mar 2019 06:25:01 GMT'
dt = parser.parse(datetime_string)
print(dt)
Вывод:
datetime.datetime(2019, 3, 26, 6, 25, 1, tzinfo=tzutc())
Ответ №2:
«Ошибка значения: остаются неконвертированные данные:»
Это указывает на то, что datetime не удалось преобразовать предоставленные вами данные, вероятно, из-за ошибки формата при попытке проанализировать неожиданное значение.
Оказывается, это так, у вас опечатка. Измените s в формате времени на заглавные буквы
date = datetime.datetime.strptime(timeString, '%a, %d %b %Y %H:%M:%S %Z')