想象一下,您有一个函数,在某些错误情况下会给出异常,而在某些情况下会返回 None(它不是我设计的,我需要使用它)。现在,您需要以相同的方式处理这些错误(向用户显示消息,记录并优雅退出)。
我一直在做这样的事情:
try:
result = weird_func()
except:
*same functionality* do something here
if not result:
*same functionality* do the same here as in the except block
但这真的很糟糕。有没有办法巧妙地将这两者合二为一?我一直在考虑使用 try/finally 而不使用 except,但它看起来有点奇怪。
有什么建议么?