Strptime假设时间不一致

时间:2018-02-22 19:15:35

标签: python python-3.x datetime strptime

我有一个(熊猫)系列数字,如

20170809
20181231

我想将它们转换为datetime对象。这是一个微不足道的应用程序缠绕datetime.strptime(x, '%Y%M%d')。但是,日期时间会增加不同的小时数。例如:

 20011231 2001-01-31 00:12:00
 20050102 2005-01-02 00:01:00
 20000815 2000-01-15 00:08:00

如何强制strptime为每个字符串假设相同的小时/分钟/秒?

1 个答案:

答案 0 :(得分:1)

月份为m。首都M意味着分钟。

你这样做:

>>> datetime.strptime('20011231', '%Y%M%d')
datetime.datetime(2001, 1, 31, 0, 12)

但需要这样做:

>>> datetime.strptime('20011231', '%Y%m%d')
datetime.datetime(2001, 12, 31, 0, 0)