目录:
1.异常处理的一般写法
2.捕获异常
3.抛出异常
4.异常的传递
1.一般写法
try:
pass # 可能出现报错的代码
except (异常):
pass # 有这种异常时,执行的代码
except (异常1,异常2):
pass # 有异常1,2时,执行的代码
except Exception as result:
pass # 有异常执行的代码
else:
pass # 没有异常时,执行的代码
finally:
pass # 不管有没有异常都执行的代码
当有多个错误时,可以使用多个except 加上具体的错误类型就可
如果程序运行的错误你不知道是何种,那么就可以使用Exception,它表示常规报错,是常规报错的基类
注:程序运行失败,不是程序错误,而叫做程序报错。因为任何一个程序都是有一定逻辑的,只是在具体实现时没有达到效果。
2.捕获异常
try:
pass # 可能出现报错的代码
except Exception as a:
print(a)
将具体的报错信息通过赋值打印捕获。这也是一种常规写法。
3.抛出异常
def demo():
pass
er = Exception("自定义错误类型")
raise er
try:
demo()
except Exception as result:
print(result)
通过定义函数来实现,也就是说函数可以使用return、raise。来实现具体的功能
4.异常的传递
在定义的函数中如果存在异常,那么在调用时也会将异常传递给调用一方,当异常传到主程序时,程序运行会终止。
在开发中,可以在主函数中增加异常捕获,而在主函数中调用的其他函数,只要出现异常,都会传递到主函数的异常捕获中,这样就不需要在代码中,增加大量的异常捕获,能够保证代码的整洁。