免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
python try語句相關(guān)(try/except/else/finally)

1、try - except

作用: 捕獲程序在執(zhí)行時(shí)遇到的異常情況,即一些報(bào)錯(cuò)。什么啥玩意兒沒定義啊,符號(hào)又錯(cuò)了啊之類的你懂得。

意義: 因?yàn)槌绦蛟诎l(fā)現(xiàn)某個(gè)錯(cuò)誤時(shí),往往會(huì)中斷不再向下執(zhí)行,如下例子說明問題:

很明顯,我們并沒有定義b,  就將它賦值給a, 現(xiàn)在我們運(yùn)行如下:

不出所料提示NameError, 發(fā)現(xiàn)錯(cuò)誤就報(bào)錯(cuò),不再執(zhí)行下面的程序。

現(xiàn)在我們用try/except寫一下:

打?。?/p>

我們從這個(gè)例子可以試著去推測(cè)這段代碼的執(zhí)行過程:

(1)先執(zhí)行try代碼塊, 發(fā)現(xiàn)了錯(cuò)誤。

(2)執(zhí)行except代碼塊。

(3)程序向下執(zhí)行。

可能有疑問try block發(fā)現(xiàn)異常前后正常的的部分會(huì)被執(zhí)行嗎,可以測(cè)試一下:

打?。?/p>

結(jié)論:

 

(1)先執(zhí)行try block, 直到發(fā)現(xiàn)了錯(cuò)誤,不再執(zhí)行異常之后的代碼。

(2)執(zhí)行except block.

(3)向下繼續(xù)。

 

現(xiàn)在已經(jīng)對(duì)try/excepy有了感性的了解,接下來拓展它的用法:

簡單來說,在try/except語句中,可以用多個(gè)except.

例子:

這里使用了兩個(gè)except, 可以發(fā)現(xiàn)except 后面跟了SyntaxError, NameError, 這個(gè)我們經(jīng)常見過的兩個(gè)系統(tǒng)報(bào)錯(cuò),當(dāng)然這里可以改成任何系統(tǒng)錯(cuò)誤(參見python標(biāo)準(zhǔn)異常)。執(zhí)行:

可見,當(dāng)try代碼塊執(zhí)行出現(xiàn)異常,在except中匹配到了NameError的異常,則執(zhí)行了對(duì)應(yīng)except的語句。

新的疑問,若所有except都沒有匹配呢,測(cè)試如下:

我們將NameErro改成了SystemExit,打印:

發(fā)現(xiàn)又回到了開始,說明這樣的try/except等于是廢的。。。

所以避免沒有匹配到異常,又中斷程序,將代碼修改如下:

即又加了一條except, 這條except后面沒有加系統(tǒng)錯(cuò)誤,打?。?/p>

OK,get it.

 

2、try-except-else

舉個(gè)例子:

打?。?/p>

可見,有異常時(shí),else block時(shí)不執(zhí)行的。

那,無異常時(shí):

   

打印:

可見,無異常時(shí)else block執(zhí)行。

至此可以寫出try/except/else的格式

--------------------------------------------------------------------------------

try:

    try block

except ERROR1:

    except ERROR1 block

except ERRPR2:

    except ERROR2 block

            ......

except:

    except block

else:

    else block

-----------------------------------------------------------------------------

當(dāng)然, 這些測(cè)試只是看到語句的功能,具體的實(shí)現(xiàn)內(nèi)部原理再說吧, 一開始看那些得把人搞暈。

 

3、try-finally

作用: 無論try語句是否有異常,最后都要執(zhí)行的代碼。

例子:

錯(cuò)是有的,先執(zhí)行完finally block, 然后回到try block報(bào)錯(cuò)。

當(dāng)然 try, except, else, finally是可以全部組合在一起用的。

 

 

PS:實(shí)際上可以自定義異常,這個(gè)需要用到類的知識(shí),以后再說。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
python中的異常捕獲
給妹子講python-S01E24異常處理方式
關(guān)于Python異常處理,你要知道的事情!
python的try語句
經(jīng)常出現(xiàn)在python中的錯(cuò)誤和異常處理
Python異常處理
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服