Python学习笔记七(错误与异常)

传送门:

python及pycharm安装配置_pycharm 配置python-CSDN博客 

Python学习笔记一(基础知识)-CSDN博客 

Python学习笔记二(函数与模块)-CSDN博客 

Python学习笔记三(面向对象)-CSDN博客 

Python学习笔记四(面向对象)-CSDN博客

python学习笔记五(面向对象实战版)-CSDN博客 

Python学习笔记六(文件操作)-CSDN博客 


目录

一、错误与异常

1.1语法错误

1.2运行时错误

 二、异常处理

三、异常处理升级版

四、获取异常信息

4.1 exc_info 

4.2 traceback 


一、错误与异常

在编写程序时,难免会遇到错误,有的是编写人员疏忽造成的语法错误,有的是程序内部隐含逻辑问题造成的数据错误,还有的是程序运行时与系统的规则冲突造成的系统错误。错误分为语法错误和运行时错误。

1.1语法错误

这个好理解,就是你写代码时出错了。就像打错字一样,当年在学C的时候,需要写头文件include <stdio.h>。相信每一个写过C的最开始都会写出inlcude<stdio.h>。除了手误以外,还有这种:print "Hello,World!"。等等,千奇百怪,无所不有。这是很正常的,只需要执行或者后续发现改正就可以了。

1.2运行时错误

一个景点例子是a = 1/0。这个语句在语法上没有任何错误,但由于1/0没有意义,所以也会报错。运行时错误也称为异常。运行就会报这个错误:ZeroDivisionError: division by zero。

除此之外常见的异常类型还有:

异常名称 描述
BaseException 所有异常的基类
SystemExit 解释器请求退出
KeyboardInterrupt 用户中断执行(通常是输入^C)
Exception 常规错误的基类
StopIteration 迭代器没有更多的值
GeneratorExit 生成器(generator)发生异常来通知退出
StandardError 所有的内建标准异常的基类
ArithmeticError 所有数值计算错误的基类
FloatingPointError 浮点计算错误
OverflowError 数值运算超出最大限制
ZeroDivisionError 除(或取模)零 (所有数据类型)
AssertionError 断言语句失败
AttributeError 对象没有这个属性
EOFError 没有内建输入,到达EOF 标记
EnvironmentError 操作系统错误的基类
IOError 输入/输出操作失败
OSError 操作系统错误
WindowsError 系统调用失败
ImportError 导入模块/对象失败
LookupError