我怎么能代表蟒蛇无限多? 无论你在程序中输入该号码,没有号码应该比无边的这种表示更大。
Answer 1:
在Python中,你可以这样做:
test = float("inf")
在Python 3.5,你可以这样做:
import math
test = math.inf
然后:
test > 1
test > 10000
test > x
永远是正确的。 当然,除非如所指出的,x是也无穷大或“南”(“非数字”)。
另外(Python的2.X ONLY),在比较以Ellipsis
, float(inf)
较小,例如:
float('inf') < Ellipsis
将返回true。
Answer 2:
因为Python 3.5,你可以使用math.inf
:
>>> import math
>>> math.inf
inf
Answer 3:
我不知道究竟你在做什么,但float("inf")
给你一个浮动无限,这是比任何其他数量。
Answer 4:
另外,不太方便,办法做到这一点是使用Decimal
类:
from decimal import Decimal
pos_inf = Decimal('Infinity')
neg_inf = Decimal('-Infinity')
Answer 5:
似乎没有人明确地提及了负无穷大,所以我觉得我应该补充它。
对于正无穷大(只是为了完整起见):
math.inf
对于负无穷大:
-math.inf
Answer 6:
有一个在与NumPy库的无边: from numpy import inf
。 为了得到负无穷大,可以简单地写-inf
。
Answer 7:
在python2.x有一个肮脏的黑客是为这个目的(不要使用它,除非绝对必要):
None < any integer < any string
因此,检查i < ''
保持True
为任何整数i
。
它已在python3合理地弃用。 现在这种比较落得
TypeError: unorderable types: str() < int()
Answer 8:
首先float类型的(“INF”)是浮动尽管它可被用于比较的目的,但它是比较针对它相当慢。 所以,如果你对比较float数的大名单(“INF”),然后小心把它捡起。 我不知道“math.inf”的表现。
文章来源: How can I represent an infinite number in Python?