Python 日期时间格式与内容不匹配

Python 日期时间格式与内容不匹配,python,datetime,Python,Datetime,我已经检查了很多与这个主题相关的问题,但是我找不到我的错误 我的代码可以简化为: date = "2016/07/20" time = "11:44:20.920" date_time = datetime.strptime(date + " " + time, '%y/%m/%d %H:%M:%S.%f') 我得到的错误如下: Traceback (most recent call last): File "adma_shortener.py", line 50, in <mod

我已经检查了很多与这个主题相关的问题,但是我找不到我的错误

我的代码可以简化为:

date = "2016/07/20"
time = "11:44:20.920"

date_time = datetime.strptime(date + " " + time, '%y/%m/%d %H:%M:%S.%f')
我得到的错误如下:

Traceback (most recent call last):
  File "adma_shortener.py", line 50, in <module>
    adma_time[ii] = datetime.strptime(a, '%y/%m/%d %H:%M:%S.%f').replace(microsecond=0)
  File "/usr/lib/python2.7/_strptime.py", line 325, in _strptime
    (data_string, format))
ValueError: time data '2016/07/20 11:44:20.920' does not match format '%y/%m/%d %H:%M:%S.%f'
回溯(最近一次呼叫最后一次):
文件“adma_shortener.py”,第50行,输入
adma_时间[ii]=datetime.strtime(a,'%y/%m/%d%H:%m:%S.%f')。替换(微秒=0)
文件“/usr/lib/python2.7/_strtime.py”,第325行,在_strtime中
(数据字符串,格式))
ValueError:时间数据“2016/07/20 11:44:20.920”与格式“%y/%m/%d%H:%m:%S.%f”不匹配
有人能看出我的错误吗?
提前感谢

年度指令应采用caps格式:

date_time = datetime.strptime(date + " " + time, '%Y/%m/%d %H:%M:%S.%f')
#                                                  ^
%y
没有世纪作为零填充十进制数的年份

%Y
以世纪为十进制数的年份


参考:


%y
是“没有世纪的年份为零填充十进制数”的说明符,表示两位数。请改用
%Y

如果您不太熟悉,我建议您改用。这要简单得多。例如:

>>> import dateutil.parser
>>> date = "2016/07/20"
>>> time = "11:44:20.920"
>>> my_date = dateutil.parser.parse('{date} {time}'.format(date=date, time=time))
>>> my_date
datetime.datetime(2016, 7, 20, 11, 44, 20, 920000)

这不是特别好的建议。如果日期的格式已知,则绝对应该使用
strtime
,因为它速度更快,而且解析器可能会错误地匹配格式错误的日期输入。