您可以将finally:块与try:块一起使用。finally块是放置必须执行的所有代码的位置,无论try块是否引发异常。try-finally语句的语法是:try:
You do your operations here;
......................
Due to any exception, this may be skipped.
finally:
This would always be executed.
......................
您不能同时使用else子句和finally子句。
示例#!/usr/bin/python
try:
fh = open("testfile", "w")
("This is my test file for exception handling!!")
finally:
print "Error: can\'t find file or read data"
输出结果
如果您无权以写入模式打开文件,则将产生以下结果-Error: can't find file or read data
相同的例子可以更清晰地写成如下-
示例#!/usr/bin/python
try:
fh = open("testfile", "w")
try:
("This is my test file for exception handling!!")
finally:
print "Going to close the file"
()
except IOError:
print "Error: can\'t find file or read data"
当try块中引发异常时,执行立即转到finally块。执行完finally块中的所有语句后,如果在try-except语句的下一个较高层中存在,则再次引发异常,并在except语句中对其进行处理。