成功的異常處理應實現如下4個目標:
使程式**混亂最小化。
捕獲並保留診斷資訊。
通知合適的人員。
採用合適的方式結束異常活動。
1.不要過度使用異常
過度使用異常主要表現在兩個方面 :
把異常和普通錯誤混淆在一起,不再編寫任何錯誤處理**,而是以簡單地 發異常來代替所有的錯誤處理。
使用異常處理來代替流程控制。
對於完全己知的錯誤普通的錯誤應該編寫處理這種錯誤的**,增加程式的健壯性。只有對於外部的、不能確定和預知的執行時錯誤才使用異常。
異常處理機制的初衷是將不可預期異常的處理**和正常的業務邏輯處理**分離,因此絕不要使用異常處理來代替正常的業務邏輯判斷。
異常機制的效率比正常的流程控制效率差 ,所以不要使用異常處理來代替正常的程式流程控制。
2.不要使用龐大的try塊
當try塊過於龐大時,就難免在 try 塊後緊跟大量的 except 塊才可以針對不同的異常提供不同的處理邏輯。在同 try 塊後緊跟大量 except 塊則需要分析他們之間的邏輯關係,反而增加了程式設計複雜度 。
正確的做法是,把大塊的 try 塊分割成多個可能出現異常的程式段落,並把它們放在單獨的 try塊中,從而分別捕獲並處理異常。
3.不要忽略捕捉到的異常
建議對異常採取適當措施, 如:
Python筆記 異常處理
python筆記 異常處理 捕獲異常 try 語句 except 異常名1 語句 except 異常名2 語句 else 語句 另一種形式,不包含except和else語句 try 語句 finally 語句 eg.python view plain copy print l 1,2,3,4 try...
python筆記 異常處理
1.狹義的異常處理 當一次請求多個網頁時,如果其中乙個網頁出錯,那麼整個程式就會終止,造成其他網頁都無法完成請求。所以需要通過異常處理將可能出錯的網頁進行處理,以至於其他網頁能被請求。import requests urls defget data url data requests.get url...
Python 異常處理筆記
異常處理 異常 程式執行過程 現的錯誤和警告 異常類 給不同的種類的異常分的型別 nameerror 標示符未定義錯誤 print a typeerror 型別錯誤 print abcd 123 indexerror 下標越界錯誤 lis 紅燒肉 香辣烤魚 火鍋 print lis len lis ...