python

Python基础(六)异常处理

2019-09-27  本文已影响0人  鹊南飞_

Python的异常机制主要依赖try,except, finally, else 和 raise五个关键字

1. 异常描述

异常机制已经成为衡量一门编程语言是否成熟的标准之一
使用异常处理机制的Python程序有更好的容错性,更加健壮。

2. 异常处理机制

1. try...except捕获异常

try:
      # 业务实现代码
      ...
except (Error1, Error2, ...) as e:
      ...
      goto retry
实例

2. 异常类的继承机制

异常捕获流程

所有异常类的基类是BaseException,
但是用户如果要实现自定义异常,则应该继承Exception类

3. 多异常捕获

在使用一个except块捕获多种类型的异常时,只要将多个异常类用圆括号括起来,中间用逗号隔开即可——其实就是构建多个异常的元组


多异常捕获

4. 访问异常信息

5. else块

当try语句没有出现异常时,程序会执行else块
意义,当try没有异常,else有异常,就能体现else块的作用

6. 使用finally回收资源

  1. 为了保证一定能回收在try块打开的物理资源,异常处理机制提供了finally块。不管try块的代码是否出现问题,也不管哪一个except块被执行,甚至在try块或except块中执行了return语句,finally块总会被执行。
  2. 如果在finally块中使用了return语句或raise语句,将会导致try块,except块中的return,raise语句失效。


    Python异常处理语法

7. 异常处理嵌套

3. 使用raise引发异常

1. 引发异常

引发异常

2. 自定义异常类

3. raise不需要参数

4. Python的异常传播轨迹

只要异常没有被捕获到,异常就会从发生异常的函数或方法向外传播,首先传给该函数的调用者,该函数或方法的调用者再传播给其调用者......直到最后传到Python解释器。中止程序,打印异常的传播轨迹信息。

5. 异常处理规则

1. 不要过度使用异常

2. 不要使用过于庞大的try块

3. 不要忽略捕获到的异常

上一篇 下一篇

猜你喜欢

热点阅读