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