Python numpy.isinf()
Python numpy.isinf()函数按元素测试它是+ve还是-ve无穷大,还是不返回布尔数组的结果。
语法:
numpy.isinf(array [, out])
参数 :
array : [array_like]输入数组或对象,我们需要测试其元素是否为无穷大。
out : [ndarray, optional]输出数组与结果放在一起。它的类型被保留,并且它必须是正确的形状以容纳输出。
返回 :
含有结果的布尔数组。对于标量输入,结果是一个新的布尔值,如果输入是正的或负的无穷大,则值为True;否则值为False。对于数组输入,结果是一个布尔数组,其形状与输入相同,如果输入的相应元素是正的或负的无穷大,其值为True;其他地方的值为False。
代码 1 :
# Python Program illustrating
# numpy.isinf() method
import numpy as geek
print("Finite : ", geek.isinf(1), "\n")
print("Finite : ", geek.isinf(0), "\n")
# not a number
print("Finite : ", geek.isinf(geek.nan), "\n")
# infinity
print("Finite : ", geek.isinf(geek.inf), "\n")
print("Finite : ", geek.isinf(geek.NINF), "\n")
x = geek.array([-geek.inf, 0., geek.inf])
y = geek.array([2, 2, 2])
print("Checking for infinity : ", geek.isinf(x, y))
输出 :
Finite : False
Finite : False
Finite : False
Finite : True
Finite : True
Checking for infinity : [1 0 1]
代码 2 :
# Python Program illustrating
# numpy.isinf() method
import numpy as geek
# Returns True/False value for each element
b = geek.arange(8).reshape(2, 4)
print("\n",b)
print("\nIs Infinity : \n", geek.isinf(b))
# geek.inf : Positive Infinity
# geek.NINF : negative Infinity
b = [[geek.inf],
[geek.NINF]]
print("\nIs Infinity : \n", geek.isinf(b))
输出 :
[[0 1 2 3]
[4 5 6 7]]
Is Infinity :
[[False False False False]
[False False False False]]
Is Infinity :
[[ True]
[ True]]