2011-03-12 37 views
1

ValueError: time data '03-10-2011 04:35 PM' does not match format '%m-%d-%Y %I:M %p'Python:strptime不匹配的格式

看起來像它匹配我嗎?

datetime = datestr + " " + timestr 
date_struct = time.strptime(datetime, "%m-%d-%Y %I:M %p") 

回答

8

你缺少一個右前%M

date_struct = time.strptime(datetime, "%m-%d-%Y %I:%M %p") 
4

這些日期時間格式字符串是雙向的,所以你可以很容易地檢查假說,如「看起來它匹配」:

>>> import datetime 
>>> fmt = "%m-%d-%Y %I:M %p" 
>>> dt = datetime.datetime(2011, 3, 10, 16, 35) 
>>> dt.strftime(fmt) 
'03-10-2011 04:M PM' # Oops! 
>>> 
+1

這節省了我的皮膚。 – Spaceghost 2013-03-13 22:14:41