如何在Python中表示无限数?

787 投票
13 回答
877520 浏览
提问于 2025-04-17 04:24

我该如何在Python中表示一个无限大的数字?无论你在程序中输入哪个数字,都应该没有数字能比这个无限大的表示更大。

13 个回答

105

似乎没有人专门提到负无穷,所以我觉得我应该补充一下。

关于负无穷:

-math.inf

关于正无穷(只是为了完整性):

math.inf
115

从Python 3.5开始,你可以使用 math.inf 这个功能:

>>> import math
>>> math.inf
inf
943

在Python中,你可以这样做:

test = float("inf")

在Python 3.5中,你可以这样做:

import math
test = math.inf

然后:

test > 1
test > 10000
test > x

这个结果总是会是对的。除非,正如之前提到的,x也是无穷大或者是“nan”(意思是“不是一个数字”)。

另外(仅限Python 2.x),在和Ellipsis比较时,float(inf)会被认为是更小的,比如:

float('inf') < Ellipsis

会返回真。

撰写回答