numpy.lib.array_utils.normalize_axis_tuple#

lib.array_utils.normalize_axis_tuple(axis, ndim, argname=None, allow_duplicate=False)[source]#

Normalizes an axis argument into a tuple of non-negative integer axes.

This handles shorthands such as 1 and converts them to (1,), as well as performing the handling of negative indices covered by normalize_axis_index.

By default, this forbids axes from being specified multiple times.

Used internally by multi-axis-checking logic.

Parameters:
axisint, iterable of int

The un-normalized index or indices of the axis.

ndimint

The number of dimensions of the array that axis should be normalized against.

argnamestr, optional

A prefix to put before the error message, typically the name of the argument.

allow_duplicatebool, optional

If False, the default, disallow an axis from being specified twice.

Returns:
normalized_axestuple of int

The normalized axis index, such that 0 <= normalized_axis < ndim

Raises:
AxisError

If any axis provided is out of range

ValueError

If an axis is repeated

See also

normalize_axis_index

normalizing a single scalar axis