- 1、Python之異常處理(try的基本用法)
- 2、python的異常處理
- 3、python(unsubscriptable object異常)
#計算機# #程序員# #python# #代碼# #IT#
程序在運行的時候,如果python解釋器遇到 不是語法錯誤 時,會停止程序的執行,並且拋出一些錯誤的信息進行提示,這就是異常。
方式try-except語句捕獲 所有發生的異常 。但這不是一個很好的方式,我們不能通過該程序識別出具體的異常信息。因為它捕獲所有的異常,常用於函數最外層進行捕捉未知異常。
1)情況1
2)情況2
3)情況3
當在try塊中拋出一個異常,立即執行finally塊代碼。
finally塊中的所有語句執行後,異常被再次觸發,並執行except塊代碼。
在不確定異常是哪個的情況下,常用的except的異常有: Exception、BaseException 。
關注我,堅持每日積累一個技巧, 長期堅持 ,我們將會不斷進步。
可能觸發異常產生的代碼會放到try語句塊里,而處理異常的代碼會在except語句塊里實現。例如:
我們可以使用三種方法來處理多個異常。
第一種方法需要把所有可能發生的異常放到一個元組裡。像這樣:
另外一種方式是對每個單獨的異常在單獨的except語句塊中處理。我們想要多少個except語句塊都可以:
最後一種方式會捕獲 所有 異常:
注意,捕獲所有異常可能會造成意外的結果,比如,通常我們使用CTRL+C來終止程序,但如果程序中捕獲了所有異常,CTRL+C就無法終止程序了。
包裹到finally從句中的代碼不管異常是否觸發都將會被執行。這可以被用來在腳本執行之後做清理工作:
如果想在沒有觸發異常的時候執行一些代碼,可以使用else從句。
有人也許問了:如果你只是想讓一些代碼在沒有觸發異常的情況下執行,為啥你不直接把代碼放在try裏面呢?回答是,那樣的話這段代碼中的任意異常都還是會被try捕獲,而你並不一定想要那樣。
else從句只會在沒有異常的情況下執行,而且它會在finally語句之前執行。
python(unsubscriptable object異常),是設置錯誤造成的,解決方法如下;
1、首先創建一個py文件,輸入「for i in range(10):y=1if i==5:y=0i=i/yprint(i)」代碼,如下圖所示。
2、運行py文件,可以看到程序運行到i等於5的時候出現了分母為0的異常,程序中斷不繼續執行,如下圖所示。
3、這時將可能出現異常的代碼添加try…except…語句,代碼如下圖。
4、運行py文件,可以看到python已經跳過異常繼續執行了,如下圖所示。
5、如果是函數調用可能出現異常的話,可以在函數外面使用try…except…語句,這樣程序出現異常了,可以繼續執行。
原創文章,作者:GPQLC,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/126979.html