Python培训分享:Python内置标准异常及其解析

本期小编为大家带来的Python教程是关于“Python内置标准异常及其解析”的内容,我们都知道,在Python技术运作下,总会出现一些Python无法正常处理的程序时就会发生一个异常。异常是一个事件,此事件是在程序执行过程中发生,而且会影响程序的正常执行。编译过程中产生的不是异常,而是错误,但是我们一般将Error作为异常的一种。所以异常包括Error和Exception。

src=http___inews.gtimg

Python分享:Python内置标准异常及其解析:下面就是Python内置标准异常以及对应的文字描述

0.BaseException 所有异常的基类。

1.SystemExit 解释器请求退出。

2.KeyboardInterrupt 用户终端执行(通常是输入)。

3.GeneratorExit 生成器发生异常来通知退出。

4.StandardError 所有内建标准异常的基类。

5.Exception 常规错误的基类

1)StopIteration 迭代器没有更多的值

2)ArithmeticError 所有数值计算错误的基类

①FloatingPointError 浮点计算错误

②OverflowError数值运算超出最大限制

③ZeroDivisionError 除(或取模)零(所有数据类型)

3)AssertionError 断言语句失败

4)AttributeError 对象没有这个属性

5)BufferError 缓存错误

6)EOFError 没有内建输入,到达EOF标记

7)EnvironmentError 操作系统错误的基类

8)IOError 输入/输出操作失败

9)LookupError 无效数据查询的基类

①IndexError 序列中没有此索引

②KeyError 映射中没有这个键

10)MemoryError 内存溢出错误(对于Python解释器不是致命的)

11)NameError 未声明/初始化对象(没有属性)

①UnboundLocalError 访问未初始化的本地变量

12)OSError 操作系统错误

13)WindowsError 系统调用失败

14)ReferenceError 弱引用试图访问已经垃圾回收了的对象

15)RuntimeError 一般的运行时错误

①NotImplementedErrro 尚未实现的方法

16)SyntaxError 语法错误

①IndentationError 缩进错误

a.TabError 空格和Tab混用

17)SystemError 一般的解释器系统错误

18)TypeError 对类型无效的操作

19)ValueError 传入无效的参数

①UnicodeError Unicode相关的错误

a.UnicodeDecodeError 解码时错误

b.UnicodeEncodeError编码时错误

c.UnicodeTranslaterror 转换时错误

20)Warning

①DeprecationgWarning 关于被弃用的特征的警告

②PendingDeprecationgWarning 关于特性将会被废弃的警告

③RuntimeWarning 可疑的运行时行为

④SyntaxWaring 可疑的语法警告

⑤UserWarning 用户代码生成的警告

⑥FutureWaring 关于构造将来语义会有改变的警告

异常处理:

捕捉异常可以使用try/except语句。try的工作原理是,当开始的一个try语句后,Python就在当前程序的上下文中做标记,这样当异常出现时就可以回到这里,try子句先执行。如果当try后的语句执行时发生异常,Python就跳回到try并执行第一个匹配该异常的except子句,异常处理完毕,控制流就通过整个try语句(除非在处理异常时又引发新的异常)。如果try语句中发生异常,却没有匹配的except子句,异常将被递交到上层的try,或者到程序的最上层(这样将结束程序,并打印缺省的出错信息)。如果try子句执行时没有发生异常,Python将执行else语句后的语句,然后控制流通过整个try语句。

此外如果使用try-finally语句无论是否发生异常都将执行最后finally后相应的代码。

除去这些常见的标准异常类型,用户还可以自定义异常类型。通过创建一个新的异常类,程序可以命名他们自己的异常。异常应该是典型的继承自Exception类,通过直接或间接的方式。

以上就是为大家介绍的Python内置标准异常及其解析的教程,希望能够给大家带来帮助。

本文来自千锋教育,转载请注明出处。

Guess you like

Origin blog.csdn.net/xiaoxijinger/article/details/121242722