每种异常都有不同的名称,在实际开发中,不可能把每种异常都涉及到,这里就要用到今天提到的这点:万能异常。
万能异常:
万能异常:Exception,可以捕获任意异常。
什么时候使用万能异常呢?
1、如果无论出现什么异常,我们统一丢弃,或者使用同一处理方式去处理这些异常,那么用Exception就足够了。
try: 代码块 except Exception as e: print('异常错误信息%s'%e)
2、如果对于不同的异常呦不同的处理方式,那就需要用到多分支。
当然,还可以使用多分支+万能异常来处理异常。使用多分支优先处理一些能预料到的错误类型,一些预料不到的错误类型被最终的万能异常捕获。
TIPS:万能异常一定要放在最后,否则就没有意义了。
try: 代码块 except 异常1: 异常1的解决办法 except 异常2: 异常2的解决办法 except Exception: 剩余的其他异常解决办法 except: 上面没有捕获的都到这里来 ex_type, ex_val, ex_stack = sys.exc_info() print(ex_type) #<class 'ValueError'> print(ex_val) #错误信息 for stack in traceback.extract_tb(ex_stack): print(stack) #<FrameSummary file test.py, line 4 in <module>>
原文链接:https://blog.csdn.net/Candance_star/article/details/94135515
如果本文对你有帮助,欢迎打赏本站