numpy.geterrcall#
- numpy.geterrcall()[源代码]#
返回当前用于浮点错误的的回调函数.
当浮点错误("divide","over","under"或"invalid"之一)的错误处理设置为"call"或"log"时,由
geterrcall返回的是被调用函数或写入到的日志实例.此函数或日志实例已通过seterrcall设置.- 返回:
- errobjcallable, log instance or None
当前错误处理程序. 如果没有通过
seterrcall设置处理程序,则返回None.
参见
seterrcall,seterr,geterr
注释
有关浮点异常类型和处理选项的完整文档,请参见 `seterr ` .
示例
>>> import numpy as np >>> np.geterrcall() # we did not yet set a handler, returns None
>>> orig_settings = np.seterr(all='call') >>> def err_handler(type, flag): ... print("Floating point error (%s), with flag %s" % (type, flag)) >>> old_handler = np.seterrcall(err_handler) >>> np.array([1, 2, 3]) / 0.0 Floating point error (divide by zero), with flag 1 array([inf, inf, inf])
>>> cur_handler = np.geterrcall() >>> cur_handler is err_handler True >>> old_settings = np.seterr(**orig_settings) # restore original >>> old_handler = np.seterrcall(None) # restore original