测试 Numpy 数组值是否为无穷大,并将结果存储在新位置

numpyserver side programmingprogramming更新于 2025/9/26 6:52:17

要测试数组值是否为无穷大,请使用 Python Numpy 中的 numpy.isinf() 方法。我们将存储结果的新位置是一个新数组。返回一个与 x 形状相同的布尔数组,当 x == +/-inf 时返回 True,否则返回 False。

NumPy 使用 IEEE 754 二进制浮点算术标准。如果在第一个参数为标量的情况下提供第二个参数,或者第一和第二个参数的形状不同,则会导致错误。

步骤

首先,导入所需的库 −

import numpy as np

创建一个包含一些 inf 值的数组 −

arr = np.array([1, 2, 10, 50, -np.inf, 0., np.inf])

显示数组 −

print("数组...
", arr)

获取数组的类型 −

print("
我们的数组类型...
", arr.dtype)

获取数组的维度 −

print("
我们的数组维度...
",arr.ndim)

获取数组中元素的数量 −

print("
元素数量...
", arr.size)

创建另一个具有相同形状的数组来存储结果 −

arrRes = np.array([5, 5, 5, 5, 5, 5, 5])

要测试数组值是否为无穷大,请使用 Python Numpy 中的 numpy.isinf() 方法。我们将存储结果的新位置是 arrRes −

print("
测试数组是否为无穷大...
",np.isinf(arr, arrRes))

检查存储结果的新数组的值 −

print("
结果...
",arrRes)

示例

import numpy as np

# Create an array with some inf values
arr = np.array([1, 2, 10, 50, -np.inf, 0., np.inf])

# 显示数组
print("数组...
", arr) # 获取数组的类型 print("
我们的数组类型...
", arr.dtype) # 获取数组的维度 print("
我们的数组维度...
",arr.ndim) # 获取数组中元素的数量 print("
元素数量...
", arr.size) # 创建另一个具有相同形状的数组来存储结果 arrRes = np.array([5, 5, 5, 5, 5, 5, 5]) # 要测试数组值是否为无穷大,请使用 Python Numpy 中的 numpy.isfinite() 方法 # 我们将存储结果的新位置是 arrRes print("
测试数组是否为无穷大...
",np.isinf(arr, arrRes)) # 检查存储结果的新数组的值 print("
结果...
",arrRes)

输出

数组...
[ 1. 2. 10. 50. -inf 0. inf]

我们的数组类型……
float64

我们的数组维度……
1

元素数量...
7

Test array for infiniteness...
[0 0 0 0 1 0 1]

结果...
[0 0 0 0 1 0 1]

相关文章