try--except--else-finally
異常處理
場景:在程序運行的過程中,如果某一處代碼有報錯,那麼程序就不會繼續運行後面的代碼,而我們又需要在程序正常運行。
try except
語句作用,捕獲程序在執行的過程中遇到的異常情況,並且在異常情況下,正常運行。
案例:
遍歷一個列表numbers
,打印1024 除以 列表中的每個元素,當i
=0,代碼則會報錯,且不會繼續執行。
numbers = [1, 0, 2, 4]
for i in numbers:
print(1024 / i)
想讓代碼繼續執行,捕獲異常,且讓程序繼續運行。try--except
可以處理這樣的情況。
try--except
語句
numbers = [1, 0, 2, 4]
for i in numbers:
try:
print(1024 / i)
except:
print('分母不能爲“0”')
從運行結果可以總結出,當i
=0,try--except
捕獲異常,並打印出現我們提示的信息。
try--except--else
語句
當沒有異常發生時,執行else
語句
numbers = [1, 0, 2, 4]
for i in numbers:
try:
print(1024 / i)
except:
print('分母不能爲“0”')
else:
print('如果沒有異常,執行else')
執行結果:
try--except--finally
語句
不管有沒有異常,finally
語句都會執行。
numbers = [1, 0, 2, 4]
for i in numbers:
try:
print(1024 / i)
except:
print('分母不能爲“0”')
finally:
print('不管有沒有異常,我都會執行')
執行結果: