numpy.exceptions.AxisError#

exception exceptions.AxisError(axis, ndim=None, msg_prefix=None)[source]#

提供的轴无效。

当指定的 axis 参数大于数组维数时,会引发此异常。为了与针对旧版 NumPy 版本编写的代码兼容(在这种情况 下,这些代码引发了 ValueErrorIndexError 的混合),此异常是这两个异常的子类,以确保 except ValueErrorexcept IndexError 语句继续捕获 AxisError

版本 1.13 中的新功能。

参数:
axisint 或 str

超出范围的轴或自定义异常消息。如果提供了轴,则也应将 ndim 指定为参数。

ndimint,可选

数组的维数。

msg_prefixstr,可选

异常消息的前缀。

示例

>>> import numpy as np
>>> array_1d = np.arange(10)
>>> np.cumsum(array_1d, axis=1)
Traceback (most recent call last):
  ...
numpy.exceptions.AxisError: axis 1 is out of bounds for array of dimension 1

保留负轴

>>> np.cumsum(array_1d, axis=-2)
Traceback (most recent call last):
  ...
numpy.exceptions.AxisError: axis -2 is out of bounds for array of dimension 1

类构造函数通常将轴和数组的维数作为参数

>>> print(np.exceptions.AxisError(2, 1, msg_prefix='error'))
error: axis 2 is out of bounds for array of dimension 1

或者,可以传递自定义异常消息

>>> print(np.exceptions.AxisError('Custom error message'))
Custom error message
属性:
axisint,可选

超出范围的轴,或者如果提供了自定义异常消息则为 None。这应该是用户传递的轴,在将负索引规范化为正索引之前。

版本 1.22 中的新功能。

ndimint,可选

数组的维数,或者如果提供了自定义异常消息则为 None

版本 1.22 中的新功能。