当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy special.seterr用法及代码示例


本文简要介绍 python 语言中 scipy.special.seterr 的用法。

用法:

scipy.special.seterr(**kwargs)#

设置如何处理 special-function 错误。

参数

all {‘ignore’, ‘warn’‘raise’},可选

立即为所有类型的special-function 错误设置处理。选项包括:

默认是不改变当前行为。如果指定了 special-function 错误的其他类别的行为,则首先应用 all,然后是其他类别。

singular {‘ignore’, ‘warn’, ‘raise’},可选

治疗奇点。

underflow {‘ignore’, ‘warn’, ‘raise’},可选

下溢的处理。

overflow {‘ignore’, ‘warn’, ‘raise’},可选

溢流处理。

slow {‘ignore’, ‘warn’, ‘raise’},可选

收敛缓慢的治疗。

loss {‘ignore’, ‘warn’, ‘raise’},可选

精度损失的处理。

no_result {‘ignore’, ‘warn’, ‘raise’},可选

未能找到结果的治疗。

domain {‘ignore’, ‘warn’, ‘raise’},可选

处理函数的无效参数。

arg {‘ignore’, ‘warn’, ‘raise’},可选

处理函数的无效参数。

other {‘ignore’, ‘warn’, ‘raise’},可选

处理未知错误。

返回

olderr dict

包含旧设置的字典。

例子

>>> import scipy.special as sc
>>> from pytest import raises
>>> sc.gammaln(0)
inf
>>> olderr = sc.seterr(singular='raise')
>>> with raises(sc.SpecialFunctionError):
...     sc.gammaln(0)
...
>>> _ = sc.seterr(**olderr)

我们也可以为除一个之外的每个类别加注。

>>> olderr = sc.seterr(all='raise', singular='ignore')
>>> sc.gammaln(0)
inf
>>> with raises(sc.SpecialFunctionError):
...     sc.spence(-1)
...
>>> _ = sc.seterr(**olderr)

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.special.seterr。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。