numpy.any#
- numpy.any(a, axis=None, out=None, keepdims=<no value>, *, where=<no value>)[源代码]#
测试沿给定轴的任何数组元素是否评估为 True.
如果 axis 是
None
,则返回单个布尔值- 参数:
- aarray_like
可以转换为数组的输入数组或对象.
- axisNone 或 int 或 int 的元组,可选
执行逻辑或归约的轴或轴.默认 (
axis=None
) 是对输入数组的所有维度执行逻辑或.`axis` 可以是负数,在这种情况下,它从最后一个轴计数到第一个轴.在 1.7.0 版本加入.
如果这是一个整数的元组,则会在多个轴上执行缩减,而不是像之前那样在单个轴或所有轴上执行.
- outndarray, 可选
要在其中放置结果的备用输出数组.它必须具有与预期输出相同的形状,并且其类型保持不变(例如,如果它是浮点类型,那么它将保持不变,对于 True 返回 1.0,对于 False 返回 0.0,无论 a 的类型如何).有关更多详细信息,请参见 输出类型确定.
- keepdimsbool, 可选
如果设置为 True,被减少的轴将作为尺寸为1的维度保留在结果中.使用此选项,结果将正确地与输入数组广播.
如果传递的是默认值,那么 keepdims 将不会传递给
ndarray
子类的any
方法,然而任何非默认值将会传递.如果子类的方法没有实现 keepdims,任何异常将会被引发.- where类数组的布尔值,可选
检查任何 True 值时要包含的元素.详见
reduce
.在 1.20.0 版本加入.
- 返回:
- any布尔值或ndarray
除非指定了 out,否则将返回一个新的布尔值或
ndarray
,在这种情况下,将返回对 out 的引用.
参见
ndarray.any
等效方法
all
测试沿给定轴的所有元素是否评估为 True.
备注
非数字 (NaN)、正无穷大和负无穷大评估为 True,因为这些不等于零.
在 2.0 版本发生变更: 在 NumPy 2.0 之前,``any`` 不会为对象类型输入数组返回布尔值.这种行为仍然可以通过
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)