什么是inf和nan?

2024-05-19 01:05:18 发布

您现在位置:Python中文网/ 问答频道 /正文

只是一个我有点困惑的问题

所以我在胡思乱想float('inf'),想知道它是用来干什么的。

我还注意到,如果我加上-inf + inf,我得到的nan是等于零还是不等于零。

我对这两个值的用途感到困惑。

当我做的时候,我没有得到,我得到了,我确信这很简单,但是我偶然发现了他们,不知道他们做了什么。


Tags: nanfloat用途inf
3条回答

nan表示“不是数字”,如果执行的计算结果不能表示为数字,则会得到浮点值。使用NaN执行的任何计算也将导致NaN

inf表示无穷大。

例如:

>>> 2*float("inf")
inf
>>> -2*float("inf")
-inf
>>> float("inf")-float("inf")
nan

inf是无穷大-一个大于任何其他值的值。-inf因此小于任何其他值。

nan表示不是数字,这不等于0

尽管正无穷和负无穷可以说是关于0的对称,但对于任何值n来说也是如此,这意味着添加这两个值的结果会产生nan。这个想法在this math.se question中讨论过。

因为nan不是一个数字,所以不能对它进行算术运算,所以第二个操作的结果也不是一个数字(nan

Inf是无穷大,它是一个“大于所有其他数字”的数字。试着从中减去你想要的任何东西,它不会变小。所有数字都是< Inf-Inf是相似的,但比任何东西都小。

NaN表示非数字。如果你试图做一个没有意义的计算,你会得到NaNInf - Inf就是这样的计算。通常NaN只是用来表示缺少一些数据。

相关问题 更多 >

    热门问题