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 為 false 時。
範例
>>> 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 ...