Что означают неуказанные не преобразованные данные? - PullRequest
2 голосов
/ 26 марта 2019

Я пытаюсь использовать 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')

Я думаю, что, возможно, проблема связана с плавающей точкой, которая должна быть в конце. Любая помощь будет оценена. Кроме того, любые советы, чтобы преобразовать это в другой часовой пояс было бы здорово.

Ответы [ 2 ]

0 голосов
/ 26 марта 2019

Вы можете использовать библиотеку dateutil для анализа строки даты и времени.

Вот пример:

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())
0 голосов
/ 26 марта 2019

"ValueError: остаются не преобразованные данные:"

Это указывает на то, что datetime не удалось преобразовать предоставленные вами данные, возможно, из-за ошибки форматирования при попытке проанализировать неожиданное значение.

Оказывается, это так, у вас есть опечатка. Измените s в формате времени на прописные S

    date = datetime.datetime.strptime(timeString, '%a, %d %b %Y %H:%M:%S %Z')
...