numpy.lib.array_utils.normalize_axis_index#
- lib.array_utils.normalize_axis_index(axis, ndim, msg_prefix=None)#
标准化轴索引 axis,使其成为具有
ndim
维度的数组形状的有效正索引。如果无法实现,则会引发带有适当消息的 AxisError。所有轴检查逻辑内部使用。
- 参数:
- 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 ...