Skip to main content
`Ctrl`+`K`

# numpy.any

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

  Test whether any array element along a given axis evaluates to True.

  Returns single boolean if axis is `None`

  Parameters:
    a array_like

      Input array or object that can be converted to an array.

    axis None or int or tuple of ints, optional

      Axis or axes along which a logical OR reduction is performed. The default (`axis=None`) is to perform a logical OR over all the dimensions of the input array. axis may be negative, in which case it counts from the last to the first axis. If this is a tuple of ints, a reduction is performed on multiple axes, instead of a single axis or all the axes as before.

    out ndarray, optional

      Alternate output array in which to place the result. It must have the same shape as the expected output and its type is preserved (e.g., if it is of type float, then it will remain so, returning 1.0 for True and 0.0 for False, regardless of the type of a). See Output type determination for more details.

    keepdims bool, optional

      If this is set to True, the axes which are reduced are left in the result as dimensions with size one. With this option, the result will broadcast correctly against the input array.

      If the default value is passed, then keepdims will not be passed through to the `any` method of sub-classes of `ndarray`, however any non-default value will be. If the sub-class’ method does not implement keepdims any exceptions will be raised.

    where array_like of bool, optional

      Elements to include in checking for any True values. See `reduce` for details.

      New in version 1.20.0.

  Returns:
    any bool or ndarray

      A new boolean or `ndarray` is returned unless out is specified, in which case a reference to out is returned.

  See also

  `ndarray.any`

    equivalent method

  `all`

    Test whether all elements along a given axis evaluate to True.

  Notes

  Not a Number (NaN), positive infinity and negative infinity evaluate to True because these are not equal to zero.

  Changed in version 2.0: Before NumPy 2.0, `any` did not return booleans for object dtype input arrays. This behavior is still available via `np.logical_or.reduce`.

  Examples

      >>> 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)