Python的3种常见异常处理结构

Python中提供了很多不同形式的异常处理结构,其基本利用思路都是:先尝试执行代码,再进行处理可能发生的错误。

1.try…except…结构
在Python异常处理结构中try…except…结构使用最为频繁,其中try子句中代码块为可能引发异常的语句,except子句用来捕获相应的异常。也可以解释为,当try子句代码块执行异常并且被except子句捕获,则执行except子句的代码块。代码例子:

math = input('成绩:')
try:
    math = int(math)
     if (0<=math<=100):
        print('成绩为:',math)
    else:
        print('不在范围')
except Exception as e:
    print('输入有误!')

2.try…excep…else…结构
上面的例子我们是通过if语句判断学生数学成绩是否在0~100的范围,也可以通过try…except…else…结构进行编写。如果try代码的子句出现了异常且该异常被except所捕获,则可以执行相应的异常处理代码,此时就不会执行else中的子句;如果try中的代码没有抛出异常,则继续执行else子句代码块。代码例子:

math = input('成绩:')
try:
    math = int(math)
except Exception as e:
    print('输入有误!')
else:
    if (0<=math<=100):
        print('成绩为:',math)
    else:
        print('不在范围')

3.try…except…finally… 结构
在try…except…finally…结构中。无论try子代码块是否正常执行,finally子句中的代码块总是会得到执行。在日常开发过程中,通常用来做清理工作,用来释放try子句中申请的资源。代码例子:

a = int(input('a:'))
b = int(input('b:'))
try:
    div = a/b
    print(div)
except Exception as e:
    print('输入有误')
finally:
    print('运行结束!')

版权声明:本文为qq_45366449原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。