Python 自1970年1月1日起已过去多少秒,包括闰秒?
Unix时间戳由以下公式给出:Python 自1970年1月1日起已过去多少秒,包括闰秒?,python,datetime,time,leap-second,Python,Datetime,Time,Leap Second,Unix时间戳由以下公式给出: int(time.time()) 给出自1970年1月1日以来经过的秒数,不含闰秒 只是出于好奇,如何获得自该日期以来经过的真实秒数,包括闰秒?(即时间轴上这两个事件之间的距离) 注: 示例:时间戳范围867715190.000。。867715202.000表示13秒的“实际持续时间”(用计时器测量),因为1997年的今天有闰秒,而Unix时间戳只增加了+12 示例2:1970年1月1日至2020年1月1日(50年间隔中的12闰年)之间经过的实际时间是(36
int(time.time())
给出自1970年1月1日以来经过的秒数,不含闰秒
只是出于好奇,如何获得自该日期以来经过的真实秒数,包括闰秒?(即时间轴上这两个事件之间的距离)
注:
- 示例:时间戳范围
表示13秒的“实际持续时间”(用计时器测量),因为1997年的今天有闰秒,而Unix时间戳只增加了+12867715190.000。。867715202.000
- 示例2:1970年1月1日至2020年1月1日(50年间隔中的12闰年)之间经过的实际时间是
,而不是(365*50+12)*24*3600+数字闰秒
。但是我们看到,(365*50+12)*24*3600
是datetime.datetime.utcfromtimestamp((365*50+12)*24*3600)
,所以很明显,没有考虑闰秒2020-01-01 00:00:00
- 链接到,以及
需要谨慎,因为1970-01-01和1972-01-01之间的SI秒数为2x365x24x60x60+1.999918 SI秒,因为在1970年,官方时间不是由铯原子决定的,而是通过实际测量地球自转来确定的,因此,官方秒数是指太阳秒,而不是国际标准秒。自1972-01-01以来,任何两个UTC时间戳之间的国际标准秒数要求访问引入UTC的闰秒列表。此列表作为IANA tzdata分发的一部分提供,也可以从其他来源获得
需要谨慎,因为1970-01-01和1972-01-01之间的SI秒数为2x365x24x60x60+1.999918 SI秒,因为在1970年,官方时间不是由铯原子决定的,而是通过实际测量地球自转来确定的,所以官方的秒数是平均太阳秒而不是SI秒。根据我对你显示的两个链接的阅读,你确实得到了真实的秒数。只是从这个到日期的转换有点混乱(因为其中一些秒被指定为闰秒)。参见编辑的问题@aryamcarthy中的“示例2”,这表明闰秒没有被考虑在内。Unix时间戳是时间的表示形式(在闰秒的情况下是不唯一的!),但不是实际测量经过的时间。根据我对您显示的两个链接的阅读,您确实得到了真实的秒数。只是从这个到日期的转换有点混乱(因为其中一些秒被指定为闰秒)。参见编辑的问题@aryamcarthy中的“示例2”,这表明闰秒没有被考虑在内。Unix时间戳是时间的表示(在闰秒的情况下不是唯一的!),但不是经过时间的实际度量。