python-try-except介绍

转载:https://blog.csdn.net/lwgkzl/article/details/81059433
类似C#中的try-catch ,Python中有try-except用于处理异常值。

1.简介
作用:用于处理程序正常执行过程中出现的一些异常情况。如果不想程序因为异常情况而中断,就可以用try来捕获,然后交予catch来处理。

try:
  code    #需要判断是否会抛出异常的代码,如果没有异常处理,python会直接停止执行程序
 
except:  #这里会捕捉到上面代码中的异常,并根据异常抛出异常处理信息
#except ExceptionName,args:    #同时也可以接受异常名称和参数,针对不同形式的异常做处理
 
  code  #这里执行异常处理的相关代码,打印输出等
 
else:  #如果没有异常则执行else
 
  code  #try部分被正常执行后执行的代码
 
finally:
  code  #退出try语句块总会执行的程序

finally模块:最后一个块是一个可选块,无论是否存在错误,它都会运行。

正常的流程是:try没有发生错误—>else内的代码—>finally中的代码。

发生异常的流程是:try中发生异常—>被except捕获并执行except片段中的代码—>执行finally中的代码。

2.实例
(1)没有异常情况:

try:    
    print('try...')
    r = 10 / 1
    print('result:', r)
    
except ZeroDivisionError as e:
    print('except:', e)
finally:
    print('finally...')

结果:
在这里插入图片描述
(2) 异常值

try:    
    print('try...')
    r = 10 / 0
    print('result:', r)
    
except ZeroDivisionError as e:
    print('except:', e)
finally:
    print('finally...')

结果:输出异常值
在这里插入图片描述

参考资料:
python错误处理—try…catch…finally、调用栈分析:https://www.cnblogs.com/hiwuchong/p/8573081.html

Try Catch in Python:https://www.codingem.com/try-catch-in-python/#:~:text=In%20Python%2C%20there%20is%20no%20such%20thing%20as,the%20try-catch%20you%E2%80%99ve%20seen%20in%20some%20other%20languages.

你可能感兴趣的:(#,python,其他)