Python入门教程第53篇 异常处理之try…except…finally
Posted 不剪发的Tony老师
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python入门教程第53篇 异常处理之try…except…finally相关的知识,希望对你有一定的参考价值。
本篇我们继续学习 Python 异常处理,主要介绍 try…except…finally 语句的使用。
try…except…finally 语句简介
try…except 语句可以在 try 分支中捕获一个或多个异常并且在 except 分支中处理这些异常。该语句还有一个可选的 finally 分支:
try:
# 业务代码
except:
# 异常处理
finally:
# 清理代码
无论是否发生异常,都会执行 finally 分支中的代码。try 分支或者任何 except 分支执行之后立即执行 finally 分支。
以下流程图演示了 try…except…finally 语句的执行过程:
try…except…finally 语句示例
以下示例使用了 try…except…finally 语句:
a = 10
b = 0
try:
c = a / b
print(c)
except ZeroDivisionError as error:
print(error)
finally:
print('Finishing up.')
输出结果如下:
division by zero
Finishing up.
以上示例中,try 分支产生了一个 ZeroDivisionError 异常,执行 except 分支之后还执行了 finally 分支。
以下示例中的 try 分支没有产生异常,因此执行完 try 分支之后再执行 finally 分支:
a = 10
b = 2
try:
c = a / b
print(c)
except ZeroDivisionError as error:
print(error)
finally:
print('Finishing up.')
输出结果如下:
5.0
Finishing up.
try…finally 语句
try…except…finally 语句中的 except 分支也可可选的,因此我们可以这样使用:
try:
# 业务代码
finally:
# 总是会被执行的代码
通常来说,当我们无法处理异常但又需要清理资源时可以使用这种语句结构。例如,无论是否出现异常都需要关闭已经打开的文件。
总结
- 无论是否发生异常,try…except…finally 语句都会执行 finally 分支中的语句。
- 使用 finally 分支清理资源,例如关闭文件。
以上是关于Python入门教程第53篇 异常处理之try…except…finally的主要内容,如果未能解决你的问题,请参考以下文章
Python入门教程第52篇 异常处理之try…except