Python ISO日期格式的正确日期解析器格式字符串是什么?
我试图以ISO日期格式解析日期,但由于我不理解的原因,我使用的模式不起作用 从外壳:Python ISO日期格式的正确日期解析器格式字符串是什么?,python,date,python-2.7,date-parsing,Python,Date,Python 2.7,Date Parsing,我试图以ISO日期格式解析日期,但由于我不理解的原因,我使用的模式不起作用 从外壳: >>> s datetime.date(2014, 1, 3) >>> str(s) '2014-01-03' >>> datetine.strptime(str(s),"%y-%m-%d").date() Traceback (most recent call last): File "<interactive input>", line
>>> s
datetime.date(2014, 1, 3)
>>> str(s)
'2014-01-03'
>>> datetine.strptime(str(s),"%y-%m-%d").date()
Traceback (most recent call last):
File "<interactive input>", line 1, in <module>
File "C:\Python27\lib\_strptime.py", line 325, in _strptime
(date_string, format))
ValueError: time data '2014-01-30' does not match format '%y-%m-$d'
>>s
日期时间。日期(2014年1月3日)
>>>str(s)
'2014-01-03'
>>>datetine.strtime(str(s),%y-%m-%d”).date()
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“C:\Python27\lib\\\\\\\\\ strtime.py”,第325行,在\\ strtime中
(日期\字符串,格式))
ValueError:时间数据“2014-01-30”与格式“%y-%m-$d”不匹配
但是
2014-01-03
应该与%y-%m-%d
匹配,对吗?为什么会出现此错误?大小写之间的差异:
>>> datetime.datetime.strptime('2014-01-03', '%Y-%m-%d').date()
datetime.date(2014, 1, 3)
>>> datetime.datetime.strptime('14-01-03', '%y-%m-%d').date()
datetime.date(2014, 1, 3)
记录在(强调矿)的。:
%y年没有世纪作为零填充十进制数。00,01,…,99%Y年,世纪为十进制数。1970年、1988年、2001年、2013年
因此,
%y-%m-%d
期望的是14-01-03
,而您的2014-01-03
要求%y-%m-%d资本y
为4位数的年份-例如:%y-%m-%d
。你到底想达到什么目的?奇怪的是,把一个日期的str rep转换成datetime,然后把日期取回来…@JonClements应该是ab-answer。小是什么意思?@GrijeshChauhan小写字母y
是两位数的年份。。。有关信息,请参阅。。。或者说“谢谢你”,这几乎和我以前一样also@GrijeshChauhan它基于C库:)