python的正负无穷float("inf")的用法

python

今天,在看书的时候看到这么一个例子:

这是用来求解 从某个数字列表中找出俩个彼此最接近但是不相等的数(俩者之间的绝对差是最小的):

python;gutter:true;">>>> from random import randrange

>>> seq = [randrange(10**10) for i in range(100)]

>>> dd=float("inf")

>>> for x in seq:

... for y in seq:

... if x==y:continue

... d=abs(x-y)

... if d<dd:

... xx,yy,zz=x,y,d

...

>>> xx,yy

(6455592839, 1698708708)

但我看到这个例子的时候,看到了一个没有遇到过的语句:dd = float(“inf”)

然后开始查阅资料后,这个是表示“正负无穷”的意思,下面对于这个用法记录一下:

1.正无穷:float("inf"); 负无穷:float("-inf")

2.利用inf做简单的加法、乘法等算数运算仍然会的到inf:

>>> 45+float("inf")

inf

>>> 88*float("inf")

inf

注意:利用inf乘以0会的到not-a-number(nan)

>>> 0*float("inf")

nan

3.除了inf外的其他数除以inf,会得到0:

>>> 2017/float("inf")

0.0

>>> 176.5/float("inf")

0.0

>>> float("inf")/float("inf") --> 除了这个会得到nan外

nan

4.当然从数学意义上面可以得知,通常的运算是不会得到 inf值的

5.不等式:

当我们涉及到 < 和 > 时:

  所有数都比 -inf 大;

  所有数都比 +inf 小;

以上是 python的正负无穷float("inf")的用法 的全部内容, 来源链接: utcz.com/z/389271.html

回到顶部