bad*_*adp 38 python timezone epoch
在回顾我的过去的答案,我发现我倒是建议代码,如本:
import time
def dates_between(start, end):
# muck around between the 9k+ time representation systems in Python
# now start and end are seconds since epoch
# return [start, start + 86400, start + 86400*2, ...]
return range(start, end + 1, 86400)
Run Code Online (Sandbox Code Playgroud)
当重读这段代码时,我忍不住感受到托尼小马在我脊椎上的可怕触摸,轻轻地向我的耳朵和其他如此可怕的,可怕的东西嘀咕"闰秒".
什么时候"一天是86,400秒长"假设中断,对于'第二'的时代定义,如果有的话?(我假设像Python这样的函数time.mktime已经返回DST调整后的值,所以上面的代码片段也适用于DST切换天......我希望?)
Dav*_*ave 11
根据维基百科,
UTC时间几乎总是86 400 s长,但由于"闰秒"偶尔会有86 401 s长,可能是86 399 s长(虽然后者选项从未使用过2010年12月); 这使得日子与地球的旋转(或世界时)保持同步.
我希望双闰秒实际上可以让86402s这一天长,如果这是永远使用的话.
编辑再次:由于令人困惑的python文档,第二次猜测自己. time.mktime始终返回UTC纪元秒.完成了.:)
一天中的秒数取决于您使用的时间系统,例如,在POSIX中,根据定义,一天恰好是86400秒:
如自大纪元以来的秒数所示,每天应该恰好以86400秒计算.
在UTC中,可能存在闰秒,即,一天可以是86401 SI秒(理论上是86399 SI秒).截至2015年6月30日,已发生过26次.
如果我们通过太阳的明显运动测量天数,那么(太阳)日的长度在一年中与平均值相差约16分钟.
反过来,它与UT1不同,它也基于地球的旋转(平均太阳时).明显的太阳日比平均太阳日短20秒或长30秒.通过引入偶尔的插入闰秒,UTC保持在UT1的0.9秒内.
如果你按当地时钟定义一天,那么由于奇怪的政治时区变化,它可能会非常混乱.假设由于夏令时,一天可能只改变一小时是不正确的.
在所有"支持" 夏令时的时区,您将获得一年两天没有24小时的时间.他们分别有25小时或23小时.甚至不想考虑硬编码那些日期.它们每年和时区之间都会发生变化.
哦,这里列出了你没有想到的其他34个原因,以及为什么你不应该做你正在做的事情.
| 归档时间: |
|
| 查看次数: |
22533 次 |
| 最近记录: |