是否建议使用更干净的方法来处理Python异常?

我们可以使用finally子句来清理是否引发异常:

try:
  #some code here
except:
  handle_exception()
finally:
  do_cleanup()

如果要在发生异常的情况下进行清理,我们可以这样编写代码:

should_cleanup = True
try:
  #some code here
  should_cleanup = False
except:
  handle_exception()
finally:
  if should_cleanup():
    do_cleanup()