scipy.special.
errstate#
- class scipy.special.errstate(**kwargs)#
特殊函数错误处理的上下文管理器。
使用
errstate
的实例作为上下文管理器,允许在该上下文中执行语句,并具有已知的错误处理行为。进入上下文时,错误处理使用seterr
设置,退出时恢复到之前的值。- 参数:
- kwargs{all, singular, underflow, overflow, slow, loss, no_result, domain, arg, other}
关键字参数。有效的关键字是可能的特殊函数错误。每个关键字应具有一个字符串值,该值定义特定类型的错误的处理方式。值必须为“ignore”、“warn”或“other”。有关详细信息,请参见
seterr
。
另请参阅
geterr
获取当前处理特殊函数错误的方式
seterr
设置如何处理特殊函数错误
numpy.errstate
用于浮点错误的类似 numpy 函数
示例
>>> import scipy.special as sc >>> from pytest import raises >>> sc.gammaln(0) inf >>> with sc.errstate(singular='raise'): ... with raises(sc.SpecialFunctionError): ... sc.gammaln(0) ... >>> sc.gammaln(0) inf
我们也可以在除一个类别之外的所有类别上引发异常。
>>> with sc.errstate(all='raise', singular='ignore'): ... sc.gammaln(0) ... with raises(sc.SpecialFunctionError): ... sc.spence(-1) ... inf