numpy.lib.array_utils.normalize_axis_index#

lib.array_utils.normalize_axis_index(axis, ndim, msg_prefix=None)#

标准化轴索引 axis,使其成为具有 ndim 维的数组形状的有效正索引。如果不可能,则会引发带有相应消息的 AxisError。

在所有轴检查逻辑中内部使用。

版本 1.13.0 中的新功能。

参数:
axisint

轴的未标准化索引。可以为负数

ndimint

数组的维度数,axis 应相对于其进行标准化

msg_prefixstr

放在消息之前的词缀,通常是参数的名称

返回值:
normalized_axisint

标准化的轴索引,使得 0 <= normalized_axis < ndim

引发:
AxisError

如果轴索引无效,当 -ndim <= axis < ndim 为假时。

示例

>>> import numpy as np
>>> from numpy.lib.array_utils import normalize_axis_index
>>> normalize_axis_index(0, ndim=3)
0
>>> normalize_axis_index(1, ndim=3)
1
>>> normalize_axis_index(-1, ndim=3)
2
>>> normalize_axis_index(3, ndim=3)
Traceback (most recent call last):
...
numpy.exceptions.AxisError: axis 3 is out of bounds for array ...
>>> normalize_axis_index(-4, ndim=3, msg_prefix='axes_arg')
Traceback (most recent call last):
...
numpy.exceptions.AxisError: axes_arg: axis -4 is out of bounds ...