时间数据'2018-06-19 11:21:13.311'与格式不匹配

时间:2018-06-25 17:58:11

标签: python time

我使用python尝试读取日期/时间格式ergo 2018-06-19 11:21:13.311,该返回错误:

ValueError: time data '2018-06-19 11:21:13.311' does not match format
'%Y-%m-%d %I:%M:%S.%%'

我尝试删除。%%,但是程序返回未转换的数据错误消息。有人知道.311是什么吗?以及如何阅读?

2 个答案:

答案 0 :(得分:5)

您的日期时间字符串为'%Y-%m-%d %H:%M:%S.%f'

尝试:

import datetime
s = "2018-06-19 11:21:13.311"
print( datetime.datetime.strptime(s, '%Y-%m-%d %H:%M:%S.%f') )

输出:

2018-06-19 11:21:13.311000

MoreInfo

答案 1 :(得分:1)

为避免此类错误,您可以使用dateutil.parser,它可以自动猜测正确的格式字符串。您可以通过执行pip install python-dateutil

进行安装
>>> from dateutil import parser
>>> parser.parse("2018-06-19 11:21:13.311")
datetime.datetime(2018, 6, 19, 11, 21, 13, 311000)