numpy.all#

numpy.all(a, axis=None, out=None, keepdims=<no value>, *, where=<no value>)[源代码]#

测试给定轴上所有数组元素是否都为 True.

参数:
aarray_like

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

axisNone 或 int 或 int 元组,可选

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

outndarray, 可选

用于放置结果的可选输出数组.它必须具有与预期输出相同的形状,并且其类型会被保留(例如,如果 dtype(out) 是 float,则结果将由 0.0 和 1.0 组成).有关更多详细信息,请参见 输出类型确定 .

keepdimsbool, 可选

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

如果传递默认值,则 keepdims 将不会传递给 ndarray 子类的 all 方法,但是任何非默认值都将被传递.如果子类的方法未实现 keepdims ,则将引发任何异常.

wherebool 的类数组对象,可选

要包含在检查所有 True 值的元素.有关详细信息,请参见 reduce .

在 1.20.0 版本加入.

返回:
allndarray, bool

除非指定了 out ,否则将返回一个新的布尔值或数组,在这种情况下,将返回对 out 的引用.

参见

ndarray.all

等效方法

any

测试给定轴上是否有任何元素求值为 True.

注释

非数字 (NaN),正无穷和负无穷求值为 True ,因为它们不等于零.

在 2.0 版本发生变更: 在 NumPy 2.0 之前, all 不会为 object dtype 输入数组返回布尔值.此行为仍然可以通过 np.logical_and.reduce 获得.

示例

>>> import numpy as np
>>> np.all([[True,False],[True,True]])
False
>>> np.all([[True,False],[True,True]], axis=0)
array([ True, False])
>>> np.all([-1, 4, 5])
True
>>> np.all([1.0, np.nan])
True
>>> np.all([[True, True], [False, True]], where=[[True], [False]])
True
>>> o=np.array(False)
>>> z=np.all([-1, 4, 5], out=o)
>>> id(z), id(o), z
(28293632, 28293632, array(True)) # may vary