假设我有一个功能。
def foo(data):
if data:
return data[0]
else:
raise ValueError('data is empty')
def main_foo(..):
ele = foo(data)
现在,我想抓住那个例外,因为我的一位朋友发表了评论
Please re-raise the errors at main_foo
这是否意味着我做了类似的事情:
def main_foo( .. ):
try:
ele = foo(data)
except ValueError:
logger.log("exception caught")
答案 0 :(得分:1)
如果要在main_foo中记录异常的发生,但让其他函数实际处理异常,请执行以下操作:
def main_foo():
try:
ele = foo(data)
except ValueError:
logger.log("Exception caught")
raise
这将为main_foo的调用者提出相同的异常处理。