Python中可以用如下方式表示正负无穷:
float("inf"), float("-inf")
利用 inf 做简单加、乘算术运算仍会得到 inf
>>> 1 + float('inf')
inf
>>> 2 * float('inf')
inf
但是利用 inf 乘以0会得到 not-a-number(NaN):
>>> 0 * float("inf")
nan
除了inf外的其他数除以inf,会得到0
>>> 889 / float('inf')
0.0
>>> float('inf')/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的运算规则遵从 IEEE-754 standard
不等式:
当涉及 > 和 < 运算时,
- 所有数都比-inf大
- 所有数都比+inf小
等式:
+inf 和 +inf相等
-inf 和 -inf相等
Refer to: