1.try-except 语句
基本结构:
try:
检测范围
except Exception[as reason]:
出现异常后的处理代码
首先执行检测范围指示位置的程序
如果没有发生异常,忽略except子句,继续执行try语句后面的语句。try:
1 / 1
except ZeroDivisionError:
print(‘Divided by zero’)
print(‘Should reach here’)
执行结果
Should reach here
一个try语句可能包含多个except子句,分别来处理不同的特定的异常。最多只有一个分支会被执行。
1.2 try - except - finall
try:
检测范围
except Exception[as reason]:
出现异常后的处理代码
finally:
无论如何都会被执行的代码#不管try子句里面有没有发生异常,finally子句都会执行。
如果一个异常在try子句里被抛出,而又没有任何的except把它截住,那么这个异常会在finally子句执行后被抛出。
1.3 try - except - else
如果在try子句执行时没有发生异常,Python将执行else语句后的语句。
try:
检测范围
except:
出现异常后的处理代码
else:
如果没有异常执行这块代码
使用except而不带任何异常类型,这不是一个很好的方式,我们不能通过该程序识别出具体的异常信息,因为它捕获所有的异常。
try:
检测范围
except(Exception1[, Exception2[,…ExceptionN]]]):
发生以上多个异常中的一个,执行这块代码
else:
如果没有异常执行这块代码