Bug的由來
- 世界上第一部萬用計算機的進化版-馬克2號(Mark II)
- Debug
什么是異常?
- 程序運行時,如果Python/ target=_blank class=infotextkey>Python解釋器遇到錯誤,就會停止程序,觸發異常
- 程序員編寫特定代碼,專門捕獲這個異常,進入另一個處理分支,讓程序不會崩潰,這就是異常處理
- 保證程序的穩定新和健壯性
基本語法
try:嘗試執行的代碼except:出現錯誤的處理
try:num = int(input("請輸入數字:"))print(num)except:print("請輸入正確的數值類型")
錯誤類型捕獲
程序運行過程中,遇到的異常類型很可能是不同的,需要針對不同類型的異常,做不同的響應
try:passexcept 錯誤類型1:passexcept 錯誤類型2:passexcept Exception as e:print("未知錯誤 %s" % e)else:print("沒有異常才會執行的代碼")finally:print("不論是否異常都會執行的代碼")
fruits = ["Apple", "banana", "pear", "orange"]try:print(hi)except TypeError:print("類型錯誤")except IndexError:print("下標索引錯誤")except Exception as e:print("未知錯誤 %s" % e)else:print("沒有異常才會執行的代碼")finally:print("不論是否異常都會執行的代碼")
拋出raise異常
在開發過程中,除了代碼執行錯誤Python解釋器會拋出異常之外,還可以根據業務需求主動拋出異常。
def check_passwd():passwd = input("請輸入你的密碼: ")if len(passwd) >= 8:return passwdraise Exception("密碼長度至少8位")try:passwd = check_passwd()print(passwd)except Exception as e:print("錯誤類型為:", e)
使用traceback模塊打印異常信息import tracebacktry:print(10 / 0)except:traceback.print_exc()
總結
- 人生苦短,我用Python,初學者最友好的編程語言
- 一文詳解Python函數,實現特定功能的代碼模塊
- 一文詳解Python語言選擇結構和循環結構
- 一文詳解Python常用數據類型,列表、字典、元組和集合
- 一文詳解Python面向對象編程
- Python語言print語句和變量使用