在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
一般情况下,在Python无法正常处理程序时就会发生一个异常。异常是一个事件,此事件是在程序执行过程中发生,而且会影响程序的正常执行。编译过程中产生的不是异常,而是错误,但是我们一般将Error作为异常的一种。所以异常包括Error和Exception。
下面就是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入门学习哪些课程?python入门学习路线分享
零基础python入门学习哪些课程?python入门学习路线分享,python入门需要学习python语言基础、python语言高级、python全栈工程师前端、python全栈工程师后端、python全栈工程师后端高级、inux基础、Linux运维自动化开发、python数据分析等课程。
6581
2019-05-13 10:53:57
零基础学Python的过程有多难?需要多久?
Python是一门简单高效,应用范围广泛的计算机语言。先我们要知道Python已经算是一门相对其他编程语言而言,最适合零基础新手学习的开发语言,换句话说,如果连Python都学不进去就不要考虑进入IT技术行业了。那么零基础学Python的过程有多难呢?下面我们一起来看看Python的学习内容和规划。
8101
2019-09-29 14:03:33
零基础入门Python之安装Anaconda
对于许多才入门Python的朋友来说,学习Python的第一件事情,就是安装Anaconda。可能有些小白会问了:什么是Anaconda?简单来讲Anaconda其实是包管理器、环境管理器,它是目前数据分析的标准环境。至于为什么学习Python要安装Anaconda?下面我将详细为大家解答这个问题,同时还会手把手教大家从零开始安装Anaconda。
4462
2019-12-19 15:08:33
Python好学吗?要学多久?
许多想要学习编程语言的小白都会问这样一个问题,Python好学吗?难不难?老实说零基础学习任何编程语言都是有一定难度的。但是Python简单易懂的语法使得学习的难度大大降低了,因此Python可以说对新手最友好的编程语言。那么Python要学多久呢?根据博学谷的课程安排,即便是零基础的学员,半年以内也能熟练掌握Python。
5782
2020-07-01 12:06:53
Python解释器新手安装教程
Python解释器本身也是个程序,它是解释执行Python代码的,没有它Python代码是没有办法运行的。既然Python解释器如此重要,那么大家赶紧一起来看看Python解释器新手安装教程吧!
3962
2020-08-18 17:23:42