Python3.x那些事儿:[59]定义清理操作
try语句还有一个分甜入艺阝句finally可以定义一些不管发生不发生异常都会执行的代码,可以在这里编写一些清理代码。例如:
" origin_width="677" origin_height="442" width="500" height="326.44017725258493" style="float: none;display: block; margin: 0px auto 0 54px;" />
finally语句总是会在try语句结束之前执行,不管异常有没有发生。当一个异常在try语句块中发生了但是并没有被except语句捕捉到(或者异常发生在except语句或else语句中)时,会首先执行finally语句,然后再将异常重新抛出。
可以看到,finally语句在任何情况下都执行了,在实际项目中,finally在释放内存资源的时候非常有用。
从上面的例子中可以看到,及时使用了return,break,continue等语句跳出了try语句,finally语句依然能够执行,相当强悍。