python的try方法中的else和finally的区别
导读:python的try方法中的else和finally的区别?如下所示:输出: 在 try 中 raise一个异常,就立刻转入 except 中执行,在except 中遇到 return 时,就强制转到 finally 中执行, 在 fin...
python的try方法中的else和finally的区别?
如下所示:
输出: 在 try 中 raise一个异常,就立刻转入 except 中执行,在except 中遇到 return 时,就强制转到 finally 中执行, 在 finally 中遇到 return 时就返回 输出: 这里在 try 中没有抛出异常,因此不会转到 except 中,但是在try 中遇到return时,也会立即强制转到finally中执行,并在finally中返回 test1和test2得到的结论: 无论是在try还是在except中,遇到return时,只要设定了finally语句,就会中断当前的return语句,跳转到finally中执行,如果finally中遇到return语句,就直接返回,不再跳转回try/excpet中被中断的return语句 输出: 输出 test3和test4得到的结论: 在except和try中遇到return时,会锁定return的值,然后跳转到finally中,如果finally中没有return语句,则finally执行完毕之后仍返回原return点,将之前锁定的值返回(即finally中的动作不影响返回值),如果finally中有return语句,则执行finally中的return语句。 输出 test5得到的结论: 在一个循环中,最终要跳出循环之前,会先转到finally执行,执行完毕之后才开始下一轮循环声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: python的try方法中的else和finally的区别
本文地址: https://pptw.com/jishu/62680.html
