我在python中使用datetime相当新,我使用的是Python 2.7.3
在python控制台中:
>>>import datetime
>>>datetime.datetime.strptime("2012-3-12 10:10:10", "%Y-%m-%j %H:%M:%S")
结果如何?
datetime.datetime(2012, 1, 12, 10, 10, 10)
而不是
datetime.datetime(2012, 3, 12, 10, 10, 10)
答案 0 :(得分:3)
因为您使用的是%j
,这是“一年中的某一天”,因此它会让您失去日期时间。这有点像试图将汽车的方向盘同时转向两个方向 - 这是行不通的......
您想要%d
代替:
>>> datetime.datetime.strptime("2012-03-12 10:10:10", "%Y-%m-%d %H:%M:%S")
datetime.datetime(2012, 3, 12, 10, 10, 10)
答案 1 :(得分:1)
%j
一年中的一天作为十进制数[001,366]。
并且一年中的第12天是1月12日。
改为使用%d
:
>>> datetime.datetime.strptime("2012-03-12 10:10:10", "%Y-%m-%d %H:%M:%S")
datetime.datetime(2012, 3, 12, 10, 10, 10)