mar*_*lli 1 python floating-point datetime timestamp
以下内容相差 1 微秒:
In [37]: datetime(2514, 5, 30, 1, 53, 4, 986754, tzinfo=dt.timezone.utc) - datetime(1970,1,1, tzinfo=dt.timezone.utc)
Out[37]: datetime.timedelta(days=198841, seconds=6784, microseconds=986754)
In [38]: datetime(2514, 5, 30, 1, 53, 4, 986754, tzinfo=dt.timezone.utc).timestamp()
Out[38]: 17179869184.986755
Run Code Online (Sandbox Code Playgroud)
986754第一种情况和986755第二种情况中的微秒数。
这只是Python浮点算术错误,还是我还遗漏了其他东西?
它是浮点近似值。如果你只是输入
17179869184.986754
Run Code Online (Sandbox Code Playgroud)
进入Python,你会得到
17179869184.986755
Run Code Online (Sandbox Code Playgroud)
前者无法用 Python 的 float 类型可用的精度来表达。
| 归档时间: |
|
| 查看次数: |
100 次 |
| 最近记录: |