我使用的是Python 2.6.6和PyQt4。我有一个启动QDateTime对象,我迭代地添加60秒来创建给定时间跨度内每分钟的列表。我发现在几种情况下,向QDateTime对象添加两个不同的 seconds 值会产生相同的时间。
以下是问题的一个示例:
from PyQt4 import QtCore
start = QtCore.QDateTime.fromString("2010-11-01 00:00", "yyyy-MM-dd hh:mm")
print start.addSecs(522540).toString("yyyy-MM-dd hh:mm")
print start.addSecs(526140).toString("yyyy-MM-dd hh:mm")
结果输出:
2010-11-07 01:09
2010-11-07 01:09
我一直在敲击键盘试图解决这个问题。我做错了什么?
答案 0 :(得分:3)
可能取决于您的区域设置:
似乎DST in the United States and other countries结束于2010-11-07
...
所以我敢打赌这是结果。
如果您使用日期计算得到任何奇怪的值,请始终检查是否没有DST更改或闰年并考虑不同的区域设置。可悲的是,时间并不像看起来那样线性。