1、异常的基本用法
2、异常的高级用法
ZeroDivisionError TypeError
def foo(a):
try:
b+=100/a
except ZeroDivisionError:
print("can not divide by 0")
return -1
except:
print("unknow error")
return -2
1、具体某种异常如ZeroDivisionError 除0
2、所有的异常,就直接写 except:
执行try语句块时,没有遇到异常,那么会奖励执行else,然后再执行finally的语句块。
执行try语句块时,遇到异常,那么会执行except语句块,然后再执行finally的语句块。
当try-except-else-finally遇到函数的时候
在函数中,无论return发生在什么地方,只要在异常处理中存在finally,程序一定会将finally执行完,然后才能执行return语句,才能将函数返回。
如果try中的语句块,在函数下没有发生异常,else不被执行(由于try中有return),如果在finally中存在return那么,finally中的return会替换掉try语句块中的return。
当try-except-else-finally遇到函数的时候
1、无论return在哪里,finally一定会执行。
2、try中有return,那么else语句块不被执行。
3、finally 中的return会覆盖之前所有return。
3、finally中有return,它会覆盖到之前所有的return。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)