python try..except..finally 实验【细节决定成败】
2015-02-25 14:22
501 查看
群里朋友今天问了个问题,当时自己没注意,简单跑了下代码,发现真的很奇妙
【1】 情况1:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201502/ec13aa14a5622857066eff455428af2a)
【2】情况2:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201502/ec13aa14a5622857066eff455428af2a)
【3】情况3
![](https://oscdn.geek-share.com/Uploads/Images/Content/201502/94a26fd46c3d32c0b90029c1bfeae0f3)
【4】情况4
![](https://oscdn.geek-share.com/Uploads/Images/Content/201502/a2447decceeea13b55d6ecdd84c89ade)
由此总结, try..except..finally 的执行结构上
定义try部分 程序本该执行的部分
except 用作错误检测 一旦try部分出错,try中出错语句后面部分全部不执行
跳到except部分
而finally部分是无条件执行的,无论except中发生了什么,即使是退出请求quit()
(如果不使用finally部分,当except中出现quit(),程序自动退出
【1】 情况1:
try: global r <span style="color:#FF0000;">print 'try...'</span> r = 10 / 0 print 'result:', r except: <span style="color:#FF0000;"> print 'end:'</span> <span style="color:#FF0000;">print 'finally...' print "E"</span>
【2】情况2:
try: global r <span style="color:#FF0000;">print 'try...'</span> r = 10 / 0 print 'result:', r except: <span style="color:#FF0000;">print 'end:'</span> finally: <span style="color:#FF0000;">print 'finally...'</span> <span style="color:#FF0000;">print "E"</span>
【3】情况3
try: global r <span style="color:#FF0000;">print 'try...'</span> r = 10 / 0 print 'result:', r except: <span style="color:#FF0000;">print 'end:'</span> <span style="color:#3333FF;">quit()</span> finally: <span style="color:#FF0000;">print 'finally...'</span> print "E"
【4】情况4
try: global r <span style="color:#FF0000;">print 'try...'</span> r = 10 / 0 print 'result:', r except: <span style="color:#FF0000;">print 'end:'</span> quit() print 'finally...' print "E"
由此总结, try..except..finally 的执行结构上
定义try部分 程序本该执行的部分
except 用作错误检测 一旦try部分出错,try中出错语句后面部分全部不执行
跳到except部分
而finally部分是无条件执行的,无论except中发生了什么,即使是退出请求quit()
(如果不使用finally部分,当except中出现quit(),程序自动退出
相关文章推荐
- python 2.4 不支持 try-except-finally
- python中的try/except/else/finally语句
- python异常处理try,except,else,finally,raise
- python 学习笔记——try,except,else,finally
- A Byte of Python 笔记(11)异常:try..except、try..finally
- python中的try/except/else/finally语句--自我小结
- python中的try/except/else/finally语句
- python try/except/finally
- 【python】错误 调试 测试try except finally raise
- Syntax Error v.s. Exception, (try, except, finally) - Python
- python try except else finally 执行顺序详细分析
- Python-try except else finally有return时执行顺序探究
- python try except else finally
- Python中异常处理简单示例(try,except,finally)
- 【python】错误 调试 测试try except finally raise
- Python_try_except_finally
- python try except else finally 执行顺序详细分析
- Python中的try...except...finally
- python中 try、except、finally 的执行顺序
- python中 try、except、finally 的执行顺序