我如何在python中表示一个无限的数字?无论你在程序中输入哪个数字,都不应该大于这个表示无穷大的数字。
当前回答
NumPy库中有一个无穷大:from NumPy import inf。要得到负无穷大,可以简单地写入-inf。
其他回答
用python表示∞
float("inf")或float("inf")或float("inf")或float("inf")或float("infinity")创建一个持有∞的float对象
你也可以在python中表示-∞
float("-inf")或float("-inf")或float("-inf")或float("-infinity")创建一个持有-∞的float对象
可以执行算术运算:
infinity = float("inf")
ninfinity = float("-inf")
nan = float("nan")
print(infinity*infinity)#inf
print(ninfinity+infinity)#not a number
print(1/-infinity)#is -0.0
print(nan*nan)# is not a number
print(1/infinity) # is 0.0 since 1/∞ is 0
输出:
$ python3 floating.py
inf
nan
-0.0
nan
0.0
似乎没有人明确提到负无穷,所以我想我应该加上它。
对于负无穷:
-math.inf
对于正无穷(为了完整起见):
math.inf
在Python中,你可以这样做:
test = float("inf")
在Python 3.5中,你可以:
import math
test = math.inf
然后:
test > 1
test > 10000
test > x
永远是真的。当然,如前所述,除非x也是无穷大或“nan”(“不是一个数字”)。
此外(Python 2。x ONLY),与Ellipsis相比,float(inf)较小,例如:
float('inf') < Ellipsis
返回true。
对于正无穷
pos_inf_val = float("infinity")
对于负无穷
neg_inf_val = float("-infinity")
另一种不太方便的方法是使用Decimal class:
from decimal import Decimal
pos_inf = Decimal('Infinity')
neg_inf = Decimal('-Infinity')