numpy.any#
- numpy.any(a, axis=None, out=None, keepdims=<no value>, *, where=<no value>)[source]#
测试给定轴上是否有任何数组元素计算结果为 True。
如果 axis 为
None
,则返回单个布尔值。- 参数:
- aarray_like
输入数组或可转换为数组的对象。
- axisNone 或 int 或 int 的元组,可选
执行逻辑或归约的轴或轴。默认值 (
axis=None
) 是对输入数组的所有维度执行逻辑或。axis 可以为负数,在这种情况下,它从最后一个轴到第一个轴进行计数。版本 1.7.0 中的新功能。
如果这是一个 int 的元组,则会在多个轴上执行归约,而不是像以前那样在一个轴或所有轴上执行。
- outndarray,可选
放置结果的备用输出数组。它必须与预期输出具有相同的形状,并且其类型会保留(例如,如果它是 float 类型,则它将保持不变,对于 True 返回 1.0,对于 False 返回 0.0,而不管 a 的类型如何)。有关详细信息,请参阅输出类型确定。
- keepdimsbool,可选
如果将其设置为 True,则归约的轴将作为大小为一的维度保留在结果中。使用此选项,结果将针对输入数组正确广播。
如果传递了默认值,则 keepdims 不会传递到
any
的ndarray
子类的子类方法,但是任何非默认值都会传递。如果子类的子类方法未实现 keepdims,则会引发任何异常。- wherebool 的 array_like,可选
要在检查是否有任何 True 值时包含的元素。有关详细信息,请参阅
reduce
。版本 1.20.0 中的新功能。
- 返回值:
- anybool 或 ndarray
除非指定了 out,否则会返回一个新的布尔值或
ndarray
,在这种情况下,会返回对 out 的引用。
另请参阅
ndarray.any
等效方法
all
测试给定轴上所有元素是否计算结果为 True。
注释
非数字 (NaN)、正无穷大和负无穷大计算结果为 True,因为它们不等于零。
版本 2.0 中的更改: 在 NumPy 2.0 之前,
any
不会为对象 dtype 输入数组返回布尔值。此行为仍可通过np.logical_or.reduce
获得。示例
>>> import numpy as np >>> np.any([[True, False], [True, True]]) True
>>> np.any([[True, False, True ], ... [False, False, False]], axis=0) array([ True, False, True])
>>> np.any([-1, 0, 5]) True
>>> np.any([[np.nan], [np.inf]], axis=1, keepdims=True) array([[ True], [ True]])
>>> np.any([[True, False], [False, False]], where=[[False], [True]]) False
>>> a = np.array([[1, 0, 0], ... [0, 0, 1], ... [0, 0, 0]]) >>> np.any(a, axis=0) array([ True, False, True]) >>> np.any(a, axis=1) array([ True, True, False])
>>> o=np.array(False) >>> z=np.any([-1, 4, 5], out=o) >>> z, o (array(True), array(True)) >>> # Check now that z is a reference to o >>> z is o True >>> id(z), id(o) # identity of z and o (191614240, 191614240)