Python datetime.striptime错误-将时间字符串解析为时间对象

Python datetime.striptime错误-将时间字符串解析为时间对象,python,datetime,Python,Datetime,尝试将时间字符串解析为时间对象,并获取与当前时间的时差 以下是一个例子: >>> user_reg_time = datetime.datetime.strptime("20091129060140", "%Y%M%d%H%m%S") >>> user_reg_time = datetime.datetime.strptime("20140404134026", "%Y%M%d%H%m%S") Traceback (most recent call last)

尝试将时间字符串解析为时间对象,并获取与当前时间的时差

以下是一个例子:

>>> user_reg_time = datetime.datetime.strptime("20091129060140", "%Y%M%d%H%m%S")
>>> user_reg_time = datetime.datetime.strptime("20140404134026", "%Y%M%d%H%m%S")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/Cellar/python/2.7.5/Frameworks/Python.framework/Versions/2.7/lib/python2.7/_strptime.py", line 328, in _strptime
    data_string[found.end():])
ValueError: unconverted data remains: 6
>>user_reg_time=datetime.datetime.strtime(“20091129060140”,“Y%M%d%H%M%S”)
>>>user_reg_time=datetime.datetime.strtime(“20140404134026”,%Y%M%d%H%M%S”)
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/usr/local/ceral/python/2.7.5/Frameworks/python.framework/Versions/2.7/lib/python2.7/_strtime.py”,第328行,在_strtime中
数据_字符串[found.end():])
ValueError:未转换的数据仍然存在:6

请注意,当时间字符串为
20091129060140
时没有错误,但当时间字符串为
20140404134026
时,我得到了上述错误。除了日期,时间字符串(如长度)之间没有区别。这怎么可能呢

问题是您翻转了%m和%m,应该如下所示:

%Y%m%d%H%m%S

两者都有

%m
是月份(01-12),
%m
是分钟数(00-59)

以下是正确的代码:

user_reg_time = datetime.datetime.strptime("20091129060140", "%Y%m%d%H%M%S")
user_reg_time = datetime.datetime.strptime("20140404134026", "%Y%m%d%H%M%S")

另一种方法是使用


@零假设,很容易与所有这些看起来相似的符号混淆。:)@无效假设,是的。我批准了编辑。:)
In [1]: from dateutil import parser

In [2]: parser.parse('20091129060140')
Out[2]: datetime.datetime(2009, 11, 29, 6, 1, 40)

In [3]: parser.parse('20140404134026')                                                                            
Out[3]: datetime.datetime(2014, 4, 4, 13, 40, 26)