Python 最大科学记数法?

Python 最大科学记数法?,python,python-3.x,floating-point,Python,Python 3.x,Floating Point,如果我没记错的话,浮点数给幂分配一定数量的位,给有效数字分配一定数量的位。然而,在我的64位linux系统上,我很难理解python3中的最大浮点科学符号数: >1.8e308 inf >>>1.7e308 1.7e+308 这是怎么回事 要明确的是,我对最大浮点值不感兴趣。我对它的价值背后的原因很感兴趣。例如,对于有效数字部分,溢出似乎会发生在2的偶数幂上。为什么这会发生在1.7到1.8之间?这似乎很奇怪。要获得确切的最大值,请尝试执行以下操作: import sys sys.float_i

如果我没记错的话,浮点数给幂分配一定数量的位,给有效数字分配一定数量的位。然而,在我的64位linux系统上,我很难理解python3中的最大浮点科学符号数:

>1.8e308
inf
>>>1.7e308
1.7e+308
这是怎么回事


要明确的是,我对最大浮点值不感兴趣。我对它的价值背后的原因很感兴趣。例如,对于有效数字部分,溢出似乎会发生在2的偶数幂上。为什么这会发生在1.7到1.8之间?这似乎很奇怪。

要获得确切的最大值,请尝试执行以下操作:

import sys
sys.float_info.max
你会得到:
1.7976931348623157e+308“1.7”和“1.8”不是浮点表示的小数部分的数字。它们是十进制数字,是用十进制表示数字,而不是二进制浮点

溢出发生在2,21024的幂次方,约为1.797693•10308。

可能重复,我对最大浮点值不感兴趣。我感兴趣的是它为什么是这样。