我想编写一个函数来报告来自另一个函数的不同结果,这些结果中有一些例外,但我无法将它们转换为 if 语句
例子 :
如果 f(x) 引发 ValueError,那么我的函数必须返回字符串 'Value' 如果 f(x) 引发 TypeError,那么我的函数必须返回字符串 'Type
但我不知道如何在 Python 中做到这一点。有人可以帮我吗。
我的代码是这样的: -
def reporter(f,x):
if f(x) is ValueError():
return 'Value'
elif f(x) is E2OddException():
return 'E2Odd'
elif f(x) is E2Exception("New Yorker"):
return 'E2'
elif f(x) is None:
return 'no problem'
else:
return 'generic'