Python关于正负无穷float(‘inf’)的一些用法

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

Python中可以用如下方式表示正负无穷:

float("inf"), float("-inf")

利用 inf 做简单加、乘算术运算仍会得到 inf

>>> 1 + float('inf')

inf>>> 2 * float('inf')

inf

但是利用 inf 乘以0会得到 not-a-number(NaN):

>>> 0 * float("inf")

nan

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

>>> 889 / float('inf')0.0

>>> float('inf')/float('inf')

nan

通常的运算是不会得到 inf值的

>>> 2.0**2

4.0

>>> _**2

16.0

>>> _**2

256.0

>>> _**2

65536.0

>>> _**2

4294967296.0

>>> _**2

1.8446744073709552e+19

>>> _**2

3.4028236692093846e+38

>>> _**2

1.157920892373162e+77

>>> _**2

1.3407807929942597e+154

>>> _**2Traceback (most recent call last):

File"<stdin>", line 1,in?

OverflowError: (34,'Numerical result out of range')

inf的运算规则遵从 IEEE-754 standard

不等式:

当涉及 > 和 < 运算时,

所有数都比-inf大所有数都比+inf小 等式:

+inf 和 +inf相等

-inf 和 -inf相等

Refer to:

http://stackoverflow.com/questions/1628026/python-infinity-any-caveats

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航