小编典典

Python Infinity - 有什么注意事项吗?

all

所以 Python 有正无穷和负无穷:

float("inf"), float("-inf")

这似乎是必须有一些警告的功能类型。有什么我应该注意的吗?


阅读 70

收藏
2022-08-01

共1个答案

小编典典

您仍然可以从涉及以下的简单算术中获得非数字 (NaN) 值inf

>>> 0 * float("inf")
nan

请注意,您通常 不会inf通过通常的算术计算获得值:

>>> 2.0**2
4.0
>>> _**2
16.0
>>> _**2
256.0
>>> _**2
65536.0
>>> _**2
4294967296.0
>>> _**2
1.8446744073709552e+19
>>> _**2
3.4028236692093846e+38
>>> _**2
1.157920892373162e+77
>>> _**2
1.3407807929942597e+154
>>> _**2
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
OverflowError: (34, 'Numerical result out of range')

inf值被认为是一个非常特殊的值,具有不寻常的语义,因此最好通过异常直接了解,而不是将inf值默默地注入到您的计算中。

2022-08-01