将 datetime(1970,1,1) 转换为秒数时出现意外结果
Unexpected result when converting datetime(1970,1,1) to seconds
在 Python 3.5 中,当我将 POSIX 原点 1970-01-01
转换为时间戳(以秒为单位)而不是 0
时,我得到以下结果:
import datetime as dt
t = dt.datetime(1970,1,1)
t.timestamp()
-10800.0
预计 0
由以下人员制作:
t = dt.datetime(1970,1,1,3)
t.timestamp()
0.0
这两个结果都出乎我的意料。出现这种行为的原因可能是什么?
根据文档:假设原始日期时间实例代表本地时间
你得到一个负数,所以我猜你恰好在 UTC-3 (10800 / 60 / 60)(加上 3 小时后得到 0)
设置一个时区感知日期,您应该在 0 点返回。
在 Python 3.5 中,当我将 POSIX 原点 1970-01-01
转换为时间戳(以秒为单位)而不是 0
时,我得到以下结果:
import datetime as dt
t = dt.datetime(1970,1,1)
t.timestamp()
-10800.0
预计 0
由以下人员制作:
t = dt.datetime(1970,1,1,3)
t.timestamp()
0.0
这两个结果都出乎我的意料。出现这种行为的原因可能是什么?
根据文档:假设原始日期时间实例代表本地时间
你得到一个负数,所以我猜你恰好在 UTC-3 (10800 / 60 / 60)(加上 3 小时后得到 0)
设置一个时区感知日期,您应该在 0 点返回。