-->

我怎么能代表在Python无限多?我怎么能代表在Python无限多?(How can I repre

2019-05-12 20:48发布

我怎么能代表蟒蛇无限多? 无论你在程序中输入该号码,没有号码应该比无边的这种表示更大。

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),在比较以Ellipsisfloat(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?