我正在尝试使用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')
我认为问题可能与应该在最后出现的浮点有关。任何帮助,将不胜感激。另外,将其转换为其他时区的任何技巧都很好。
答案 0 :(得分:0)
您可以使用dateutil库来解析日期时间字符串。
这里是一个例子:
from datetime import timedelta
from exchangelib import UTC_NOW
since = UTC_NOW() - timedelta(hours=24)
for item in account.inbox.all()\
.filter(datetime_received__gt=since)\
.order_by('-datetime_received'):
# Do something
输出:
from dateutil import parser
datetime_string = 'Tue, 26 Mar 2019 06:25:01 GMT'
dt = parser.parse(datetime_string)
print(dt)
答案 1 :(得分:-1)
“ ValueError:仍保留未转换的数据:”
这表明datetime无法转换您提供的数据,可能是由于格式错误,因为它试图解析意外的值。
事实证明,您有错字。将时间格式中的 s 更改为大写的 S
date = datetime.datetime.strptime(timeString, '%a, %d %b %Y %H:%M:%S %Z')