Python:如果任何地方发生错误,请执行特定的代码行

问题描述

我正在尝试编写一个脚本来处理大量数据。当然,存在潜在的错误。在脚本中,我需要连接到数据库。如果脚本遇到错误,则代码永远不会到达终止与数据库的连接的位置。我想在我的python代码中包含一些可以识别错误发生的东西,无论在哪里,如果没有其他原因,至少可以关闭那些数据库。是否存在这样的东西?我知道我可以使用try / except,但这只有在我确切知道可以从哪里得到错误的情况下才能起作用?我基本上是在寻找一个万能的包来关闭我的数据库,以防在我未曾预料到的位置发生错误

解决方法

即使出现错误也要运行某些清理代码,请使用finally块:

try:
   # do stuff,possible exception
except:
   # run this if exception
finally:
   # always run this,even if exception

参考:https://docs.python.org/3/tutorial/errors.html#defining-clean-up-actions