本文目錄一覽:
- 1、Python之異常處理(try的基本用法)
- 2、python 錯誤提示TypeError: unsupported operand type(s) for //: ‘str’ and ‘int’
- 3、python的異常處理
- 4、python常見異常和異常捕獲
Python之異常處理(try的基本用法)
#計算機# #程序員# #python# #代碼# #IT#
程序在運行的時候,如果python解釋器遇到 不是語法錯誤 時,會停止程序的執行,並且拋出一些錯誤的信息進行提示,這就是異常。
方式try-except語句捕獲 所有發生的異常 。但這不是一個很好的方式,我們不能通過該程序識別出具體的異常信息。因為它捕獲所有的異常,常用於函數最外層進行捕捉未知異常。
1)情況1
2)情況2
3)情況3
當在try塊中拋出一個異常,立即執行finally塊代碼。
finally塊中的所有語句執行後,異常被再次觸發,並執行except塊代碼。
在不確定異常是哪個的情況下,常用的except的異常有: Exception、BaseException 。
關注我,堅持每日積累一個技巧, 長期堅持 ,我們將會不斷進步。
python 錯誤提示TypeError: unsupported operand type(s) for //: ‘str’ and ‘int’
python 錯誤提示TypeError: unsupported operand type(s) for //: ‘str’ and ‘int’是設置錯誤造成的,解決方法為;
1、圖片中沒有定義numi但是print函數裡面用了所以出現命令錯誤。
2、例中if num = 44;寫成了num==44,沒滿足if應有的語法引起的錯誤。
3、例中字元串類型的數據不能相乘引起的錯誤。
4、python需要嚴格的遵循縮進縮進不正常會引起錯誤。
python的異常處理
可能觸發異常產生的代碼會放到try語句塊里,而處理異常的代碼會在except語句塊里實現。例如:
我們可以使用三種方法來處理多個異常。
第一種方法需要把所有可能發生的異常放到一個元組裡。像這樣:
另外一種方式是對每個單獨的異常在單獨的except語句塊中處理。我們想要多少個except語句塊都可以:
最後一種方式會捕獲 所有 異常:
注意,捕獲所有異常可能會造成意外的結果,比如,通常我們使用CTRL+C來終止程序,但如果程序中捕獲了所有異常,CTRL+C就無法終止程序了。
包裹到finally從句中的代碼不管異常是否觸發都將會被執行。這可以被用來在腳本執行之後做清理工作:
如果想在沒有觸發異常的時候執行一些代碼,可以使用else從句。
有人也許問了:如果你只是想讓一些代碼在沒有觸發異常的情況下執行,為啥你不直接把代碼放在try裡面呢?回答是,那樣的話這段代碼中的任意異常都還是會被try捕獲,而你並不一定想要那樣。
else從句只會在沒有異常的情況下執行,而且它會在finally語句之前執行。
python常見異常和異常捕獲
NameError錯誤,比如:
結果:
SyntaxError錯誤,比如:
結果:
ValueError錯誤,比如:
結果:
IndexError錯誤,比如:
結果:
IndentationError錯誤,也就是縮進錯誤,比如:
結果:
KeyError錯誤,比如:
結果:
AttributeError錯誤,屬性錯誤,比如:
結果:
對特定的錯誤進行捕獲 ,用as可以自定義自己想要的提示信息,比如:
結果:
捕獲多個異常 ,需要注意的是捕獲多個異常時要用(),因為except後面只能接一個參數,比如:
結果:
捕獲全部異常時,可以用Exception,比如:
結果:
自定義錯誤信息,比如:
結果:
異常捕獲中finally的使用。一般用於不管程序是否錯誤,程序最後都應該執行的步驟,例如在文件操作中,關閉文件是最後必須執行的操作,比如:
結果:
原創文章,作者:AMHE,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/148213.html