将字符串转换为日期时出错:与格式'%b%d%Y%I:%M%p'

时间:2017-04-26 12:39:50

标签: python datetime

我有一个字符串格式的日期:“星期三,2017年4月26日12:39:28 GMT”,需要转换为日期时间。

要进行转换,我使用的是datetime.strptime

前:

datetime.strptime ("Wed, 26 Apr 2017 12:39:28 GMT", '% b% d% Y% I:% M% p')

然而,错误: ValueError:时间数据'星期三,2017年4月26日12:39:57 GMT'格式'%b%d%Y%I:%M%p'

2 个答案:

答案 0 :(得分:3)

如果无法根据格式解析字符串,或者解析后数据库中存在多余数据,则会引发ValueError。您应该删除冗余空格并修改用于解析给定字符串的指令。

你可以试试这个:

>>> from datetime import datetime
>>>
>>> ds="Wed, 26 Apr 2017 12:39:28 GMT"
>>>
>>> datetime.strptime (ds, '%a, %d %b %Y %H:%M:%S %Z')
datetime.datetime(2017, 4, 26, 12, 39, 28)

查看strftime() and strptime() Behavior

的更多详情

答案 1 :(得分:0)

与错误一样,字符串与格式不匹配。试试这个:

datetime.datetime.strptime('Wed, 26 Apr 2017 12:39:28 GMT', '%a, %d %b %Y %H:%M:%S %Z')