时间戳31/12/9999 23:59:29

时间:2013-03-07 05:23:01

标签: jython

请查看下面的说明,让我知道时间戳的原因 31/12/9999 23:59:29不是253402264799,而是253402261199。

非常感谢,

于伊

import datetime
d1 = datetime.datetime(1970, 1,1,10,0,0)  ; I am in zone time 10
d2 = datetime.datetime(1970, 1,2,23,59, 59)
print d2 - d1 --> 1 day, 13:59:59  
convert 1 day, 13:59:59 to sec
= 136799s  <-- (48 + 14) * 3600 - 1

d1 = datetime.datetime(1970, 1,1,10,0,0)
d2 = datetime.datetime(9999, 12, 31, 23, 59, 59)  
print d2 - d1 --> 2932896 days, 13:59:59 
convert 2932896 days, 13:59:59 to sec
253402264799sec <-- (2932896 * 24 + 14) * 3600 - 1

print datetime.datetime.fromtimestamp(253402264799) --> exception throw

print datetime.datetime.fromtimestamp(253402261199) --> 31/12/9999 23:59:59

1 个答案:

答案 0 :(得分:0)

原因是时间夏令时。夏季时区10区提前11小时。