python基础(9)错误和异常
错误和异常
异常处理
try...except..else...finally
, except
和finally
可有可没有。
try:
print(2/0)
except ZeroDivisionError:
print("出错了")
else:
print("没错")
finally:
print("done")
运行结果:
抛出异常
Python
使用 raise
语句抛出一个指定的异常。
抛出异常:
x=10
if x > 5:
raise Exception('x不能大于5')
捕捉抛出的异常:
x=10
try:
if x > 5:
raise Exception('x不能大于5')
except Exception:
print("出错了")
运行结果为:
注意:raise
唯一的一个参数指定了要被抛出的异常。它必须是一个异常的实例或者是异常的类(也就是 Exception
的子类)。
用户自定义异常
可以通过创建一个新的异常类来拥有自己的异常。异常类继承自 Exception
类,可以直接继承,或者间接继承,例如: