Python学习笔记(十六)————异常相关

目录

(1)异常概念

(2)异常的捕获

①异常捕获的原因

②捕获常规异常

 ③捕获指定异常

 ④捕获多个异常

⑤ 捕获异常并输出描述信息

 ⑥捕获所有异常

 ⑦异常else

 ⑧异常的finally

 (3)异常的传递


(1)异常概念

当检测到一个错误时,Python解释器就无法继续执行了,反而出现了一些错误的提示,这就是所谓的异常, 也就是我们常说的BUG

(2)异常的捕获

①异常捕获的原因

当我们的程序遇到了BUG, 那么接下来有两种情况:

       ① 整个程序因为一个BUG停止运行

       ② 对BUG进行提醒, 整个程序继续运行

在真实工作中, 我们肯定不能因为一个小的BUG就让整个程序全部奔溃, 也就是我们希望的是达到② 的这种情况

那这里我们就需要使用到捕获异常

捕获异常的作用在于:提前假设某处会出现异常,做好提前准备,当真的出现异常的时候,可以有后续手段。

捕获常规异常

基本语法:

例如需求:尝试以`r`模式打开文件,如果文件不存在,则以`w`方式打开。

 ③捕获指定异常

基本语法:

 注意:

① 如果尝试执行的代码的异常类型和要捕获的异常类型不一致,则无法捕获异常。

② 一般try下方只放一行尝试执行的代码。

 ④捕获多个异常

当捕获多个异常时,可以把要捕获的异常类型的名字,放到except 后,并使用元组的方式进行书写。

 执行结果:

⑤ 捕获异常并输出描述信息

基本语法:

执行结果:

 ⑥捕获所有异常

基本语法:

执行结果:

 ⑦异常else

else表示的是如果没有异常要执行的代码。

执行结果:

 ⑧异常的finally

finally表示的是无论是否异常都要执行的代码,例如关闭文件。

 (3)异常的传递

异常是具有传递性的

函数func01中发生异常, 并且没有捕获处理这个异常的时候, 异常

会传递到函数func02,func02也没有捕获处理这个异常的时候

main函数会捕获这个异常,  这就是异常的传递性.

提示:  当所有函数都没有捕获异常的时候, 程序就会报错

 ​

利用异常具有传递性的特点, 当我们想要保证程序不会因为异常崩溃的时候,

就可以在main函数中设置异常捕获, 由于无论在整个程序哪里发生异常, 最终都

会传递到main函数, 这样就可以确保所有的异常都会被捕获

猜你喜欢

转载自blog.csdn.net/laosao_66/article/details/131604239
今日推荐