1.例外分類
錯誤Error:
| 原因 | 示例 |
|---|---|
| 筆誤 | 像變數名寫錯,造成的語法錯誤 |
| 邏輯錯誤 | 演算法寫錯了,例如原本邏輯是求和,但寫成了乘積 |
| 函式或者類使用錯誤 | 這類也歸為邏輯錯誤 |
寫代碼時,錯誤是可以避免的,
例外Exception
有時候程式寫的沒有問題,也沒有語法錯誤,但在某些情況下依然出現一些意外,導致程式無法正常執行,就是通常所說的例外,
例如open函式操作一個檔案,但該檔案不存在,這就是一個例外,
例外不可能全部避免的,
2.健壯的代碼
健壯的代碼要避免錯誤,捕獲處理各種例外 ,
主動拋出例外
- raise 陳述句顯式拋出例外,
捕獲例外
try:
待捕獲例外的代碼塊
except [例外型別]:
例外處理
示例代碼
num1 = int(input("請輸入第一個整數:"))
num2 = int(input("請輸入第二個整數:"))
try:
res = num1/num2
except ZeroDivisionError as e:
print("除數不能為0:", e )
3.捕獲例外:
(1.try ... except..
num1 = int(input("請輸入第一個整數:"))
num2 = int(input("請輸入第二個整數:"))
try:
res = num1/num2
except ZeroDivisionError as e:
print("除數不能為0:", e )
(2.try..except...finally...
#Python學習交流QQ群:711312441
num1 = int(input("請輸入第一個整數:"))
num2 = int(input("請輸入第二個整數:"))
try:
res = num1/num2
except ZeroDivisionError as e:
print("除數不能為0:", e )
finally:
print("執行完畢")
finally 不管結果如何,最后都會執行
(3.else子句 較少使用
try陳述句中的else,當try陳述句沒有例外捕獲時,執行else陳述句
try:
pass
except Exception:
pass
else:
pass
finally:
pass
總結:
try:
pass
except Exception: #捕獲例外處理
pass
else: #沒有例外發生時執行
pass
finally: #退出try,最終一定會執行
pass
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/541649.html
標籤:其他
下一篇:檔案字串
