前言
哈嘍, 大家好, 我是了不起!
歡迎大家來觀看了不起的冒險之旅. 為了方便起見, 文中以小知為名. 講述了不起在Python異世界的冒險之旅.
白天冒險, 晚上學習. 小知可是身體和心理沒有一刻不在路上. 在今夜首先了解什么是異常: 軟件程序在運行過程中,可能會遇到能使其不能正常運行的問題,我們稱之為異常,英文是:Exception . 然后, 我們會了解捕獲異常的四種方式
一、異常是什么
程序在運行過程中發生的意外情況,稱為異常, 程序運行時一旦出現了異常,將會導致程序立即終止,異常之后的代碼將無法繼續執行,所以需要對異常進行處理
異常機制本質
- 當程序出現異常,程序安全的退出、處理完后繼續執行的機制
python中,引進了很多用來描述和處理異常的類,稱為異常類. 異常類定義中包含了該類異常的信息和對異常進行處理的方法.下面較為完整的展示了python中內建異常類的繼承層次:
解決思路
異常解決的關鍵:定位當發生異常時,解釋器會報相關的錯誤信息,并會在控制臺打印出相關錯誤信息. 我們只需按照從上到下的順序即可追溯(Trackback)錯誤發生的過程,最終定位引起錯誤的哪一行代碼.
實操代碼
#測試簡單的0不能做除數異常
#因為如果假設成立,則說明3/0=0=>可以推導0*0=3,因為結果不成立,因此假設不成立
#a=3/0
defa():
print("runina()start!")
num=1/0
print("runina()end!")
defb():
print("runinb()start!")
a()
print("runinb()end!")
defc():
print("runinc()start!")
b()
print("runinc()end!")
print("step1")
c()
print("step2")
結果輸出
從打印輸出結果來看, 最底層的方法(eg: a())出錯之后, 會在上層調用的方法位置處拋出異常. 因為錯誤信息以棧的形式輸出, 因此最頂層的調用因為先打印, 所以會先被我們看到. 因此對底層/最有用的信息一般位于最下面.
-
程序
+關注
關注
116文章
3775瀏覽量
80846 -
python
+關注
關注
56文章
4782瀏覽量
84449
發布評論請先 登錄
相關推薦
評論