numpy.any#

numpy.any(a, axis=None, out=None, keepdims=<no value>, *, where=<no value>)[source]#

测试沿给定轴的任何数组元素是否计算结果为 True。

如果 axisNone,则返回单个布尔值

参数:
aarray_like

输入数组或可以转换为数组的对象。

axisNone 或 int 或 int 元组,可选

执行逻辑或约简的轴或轴集。默认值 (axis=None) 是对输入数组的所有维度执行逻辑或运算。axis 可以是负数,在这种情况下,它从最后一个轴计数到第一个轴。如果这是一个 int 元组,则会对多个轴执行约简,而不是像以前那样对单个轴或所有轴执行约简。

outndarray,可选

用于放置结果的备用输出数组。它必须与预期输出具有相同的形状,并且其类型将被保留(例如,如果它是浮点类型,则它将保持不变,对于 True 返回 1.0,对于 False 返回 0.0,而不管 a 的类型如何)。有关详细信息,请参阅 输出类型确定

keepdimsbool,可选

如果将其设置为 True,则约简的轴将作为大小为一的维度保留在结果中。使用此选项,结果将针对输入数组正确广播。

如果传递默认值,则 keepdims 将不会传递到 any 方法的 ndarray 子类的中,但是任何非默认值都会传递。如果子类的该方法没有实现 keepdims,则会引发任何异常。

where布尔型 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)