>>> dt = '1/1/2016 00:09:55' # It supposes to be month day year
>>> from datetime import datetime
dtp = datetime.strptime(dt, '%m/%d/%y %H:%M:%S')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File
ValueError: time data '1/1/2016 00:09:55' does not match format '%m/%d/%y %H:%M:%S'
如何解析此时间数据?谢谢。
答案 0 :(得分:2)
使用%Y
代替
dtp = datetime.strptime(dt, '%m/%d/%Y %H:%M:%S')
输出
datetime.datetime(2016, 1, 1, 0, 9, 55)
答案 1 :(得分:1)
%y
说明符需要2位数年份。
>>> datetime.strptime('01/01/16 00:09:17', '%m/%d/%y %H:%M:%S')
datetime.datetime(2016, 1, 1, 0, 9, 17)
答案 2 :(得分:0)
date = datetime.strptime(row[0], '%m/%d/%Y %H:%M:%S %p')
礼物:
文件“ C:\ Users \ achow \ Anaconda3 \ lib_strptime.py”,行565,在_strptime_datetime中 tt,分数= _strptime(数据字符串,格式)
文件“ C:\ Users \ achow \ Anaconda3 \ lib_strptime.py”,行362,在_strptime中 (数据字符串,格式))
ValueError:时间数据'5/23/2016 17:35'与格式'%m /%d /%Y%H:%M:%S%p'不匹配
按以下步骤修复它:
date = datetime.strptime(row[0], '%m/%d/%Y %H:%M')