在Python中检查数值是否为无穷大或NaN

  • Post category:Python

要在Python中检查数值是否为无穷大或NaN,可以使用math库或numpy库中的函数进行判断。

检查数值是否为无穷大

在Python中使用math库的isinf()函数可以把数值与正无穷大和负无穷大相比较,从而确定是否为无穷大。示例代码如下:

import math

value = float('inf')
if math.isinf(value):
    print("The value is infinite")
else:
    print("The value is not infinite")

输出结果为:The value is infinite。

检查数值是否为NaN

在Python中使用math库的isnan()函数可以判断数值是否为NaN,示例代码如下:

import math

value = float('nan')
if math.isnan(value):
    print("The value is NaN")
else:
    print("The value is not NaN")

输出结果为:The value is NaN。

可是,当使用numpy库时,一些更方便且高效的方法是可用的。

import numpy as np

value = np.nan
if np.isnan(value):
    print("The value is NaN")
else:
    print("The value is not NaN")

输出结果同样为:The value is NaN。

此外,还可以使用numpy.isinf()函数判断数值是否为无穷大。

import numpy as np

value = float('inf')
if np.isinf(value):
    print("The value is infinite")
else:
    print("The value is not infinite")

输出结果同样为:The value is infinite。

综上所述,通过math库中的函数与numpy库中的函数,可以方便快捷地检查Python中的数值是否为无穷大或NaN。