我遇到了一个常见的scipy.interpolate错误:
>>> sx = interpolate.UnivariateSpline(T,X)
File "...scipy/interpolate/fitpack2.py", line 143, in __init__
xb=bbox[0],xe=bbox[1],s=s)
dfitpack.error: (m>k) failed for hidden m: fpcurf0:m=3
此错误是否附加了一些Python异常(我只想拦截异常并忽略它)
如果没有,如何继续运行程序?
谢谢
几个小时后我回来,给你一个解决方案:
这段代码,用来捕获异常并引发我自己的异常。
try :
sx = interpolate.UnivariateSpline(X,Y)
except :
raise PyGlideSplineError("%s : impossible de calculer la spline"%whoami())
它起作用了!!!
谢谢你
最佳答案
scipy.interpolate.dfitpack
是一个扩展,它似乎没有直接向Python公开异常类型但是,您可能会故意导致错误,将异常从其隐藏位置吓跑,捕获它,并将其类型存储在变量中:
from scipy.interpolate import dfitpack
try:
dfitpack.sproot(-1, -1, -1)
except Exception, e:
dfitpack_error = type(e)
try:
dfitpack.sproot(-1, -1, -1)
except dfitpack_error:
print "Got it!"