python之错误和异常
错误
分为语法错误和逻辑错误,如下:
语法错误指示软件的结构上有错误,导致不能被解释器解释或编译器编译。
逻辑错误可能是由于不完整或是不合法的输入所致,或者是无法生成、计算、或是输出结果需要的过程无法执行。
异常
当python检测到一个错误时,解释器就会指出当前流已经无法继续执行下去。这时候就出现了异常。
描述:异常是因为程序出现了错误而在正常控制流以外采取的行为。该行为分为两个阶段:
第一个阶段:引起异常发生的错误;在发生了一个异常条件后发生的。只要检测到错误并且意识到异常条件,解释器就会引发一个异常;
第一个阶段:检测和采取可能的措施阶段。
python中的异常
1、NameError:尝试访问一个未声明的变量
2、ZeroDivisionError:除数为零
3、SyntaxError:解释器语法错误
4、IndexError:请求的索引超出序列范围
5、KeyError:请求一个不存在的字典关键字
6、IOError:输入/输出错误
7、AttributeError:尝试访问未知的对象属性
检测和处理异常
try语句有两种主要形式:
try-except和try-finally。
try:
try_suite #监控这里的异常
except Exception[, reason]:
except_suite #异常处理代码
finally子句
finally子句是无论异常是否发生,是否捕捉都会执行的一段代码。
try:
A
except MyException:
B
else:
C
finally:
D
有异常执行:A-B-D 无异常执行A-C-D