在Python 中的错误和异常是什么?
通常来说,程序中的错误至少包括两种,一种是语法错误,另一种则是异常。
语法错误
所谓语法错误,你应该很清楚,也就是你写的代码不符合编程规范,无法被识别与执行,比如下面这个例子的语法错误
下面的代码无法被识别和执行
if name is not None
print(name)
上面的代码If 语句漏掉了冒号,不符合 Python 的语法规范,所以程序就会报错invalid syntax
。
异常
异常则是指程序的语法正确,也可以被执行,但在执行过程中遇到了错误,抛出了异常。
比如,最常见的除数不能为0。变量没有定义。数据类型的运算。
10 / 0
Traceback (most recent call last):
File "", line 1, in
ZeroDivisionError: integer division or modulo by zero
order * 2
Traceback (most recent call last):
File "", line 1, in
NameError: name 'order' is not defined1 + [1, 2]
Traceback (most recent call last):
File "", line 1, in
TypeError: unsupported operand type(s) for +: 'int' and 'list'
上面报的是常见的报错,比如ZeroDIvision NameError 和 typeError
还有很多其他异常的类型如keyError 字典的键找不到和FileNotFoundError 文件不存在
try except
使用Python的异常处理语句,可以非常优雅地处理发生的异常。