有没有一种方法可以“检测”函数/方法引发的异常?举个例子:
def foo():
print 'inside foo, next calling bar()'
_bar()
_baz()
# lots of other methods calls which raise other legitimate exceptions
def _bar():
raise my_exceptions.NotFound
def _baz():
raise my_exceptions.BadRequest
假设Foo是我的API的一部分,我需要对其进行文档化,有没有一种方法可以获取它可能引发的所有异常?
只是为了明确,我不想处理这些异常,它们应该会发生(例如,当找不到资源或请求格式错误时)。
我考虑创建一些工具,将该代码序列转换为类似于“行内”的东西:
def foo():
print 'inside foo, next calling bar()'
# what _bar() does
raise my_exceptions.NotFound
# what _baz() does
raise my_exceptions.BadRequest
# lots of other methods calls which raise other legitimate exceptions
有没有什么能帮助我检测这个问题的东西,而不是逐个方法调用进行导航?(这需要深入几个文件。)