Python datetime strptime解析错误,为什么在'2008-10-26 01:00:00'和'2008-10-26 00:00:00'之间需要两个小时?

时间:2019-03-04 17:02:46

标签: python python-3.x date datetime python-datetime

我正在处理日期,但发现了一些奇怪的事情: 我刚刚创建了一个简单的函数来将日期转换为日期时间(以秒为单位),我发现了这一点:

>>> import time
>>> from datetime import datetime
>>> parsefunc = lambda date : time.mktime(datetime.strptime(date, '%Y-%m-%d %H:%M:%S').timetuple())
>>> parsefunc('2008-10-25 01:00:00')-parsefunc('2008-10-25 00:00:00')
3600.0

好的,一小时内有3600秒。

>>> parsefunc('2008-10-26 01:00:00')-parsefunc('2008-10-26 00:00:00')
7200.0

但是这里相差7200秒。

有人知道发生了什么吗?是否已弃用任何库?遇到相同问题时,我还发现了其他一些日期: '2009-10-25 00:00:00','2010-10-31 00:00:00','2011-10-30 00:00:00','2012-10-28 00:00:00 ','2013-10-27 00:00:00','2014-10-26 00:00:00','2015-10-25 00:00:00','2016-10-30 00:00 :00','2017-10-29 00:00:00'和'2018-10-28 00:00:00'

预先感谢,我可以避免此问题,但我很好奇为什么会发生这种情况。

1 个答案:

答案 0 :(得分:0)

好吧,我刚刚发现了为什么会这样,这只是时间的变化:)