Python內置異常的處理主要使用 try-except 語句。其基本語法如下:
try:
# 嘗試執行的代碼塊
pass
except ExceptionType1 as e:
# 當ExceptionType1發生時執行的代碼塊
pass
except ExceptionType2 as e:
# 當ExceptionType2發生時執行的代碼塊
pass
else:
# 當沒有異常發生時執行的代碼塊
pass
finally:
# 無論是否發生異常都會執行的代碼塊
pass
其中,ExceptionType1、ExceptionType2等表示可能發生的異常類型,e表示對應的異常對象。
在try塊中,你可以編寫可能引發異常的代碼。如果try塊中的代碼引發了異常,Python會停止執行try塊中的剩余代碼,并跳轉到相應的except塊中執行。你可以根據需要處理不同類型的異常,每個except塊可以處理一種或多種異常類型。如果沒有異常發生,將跳過except塊,執行else塊中的代碼。無論是否發生異常,finally塊中的代碼都會被執行。
下面是一個簡單的示例:
try:
num = int(input("請輸入一個整數:"))
result = 10 / num
except ZeroDivisionError as e:
print("除數不能為零!")
except ValueError as e:
print("請輸入一個整數!")
else:
print("結果是:", result)
finally:
print("程序執行完畢。")
在這個示例中,我們嘗試將用戶輸入的值轉換為整數,并計算其倒數。如果用戶輸入的不是整數或輸入的除數為零,將引發相應的異常。我們使用兩個except塊分別處理這兩種異常,并在else塊中輸出結果。無論是否發生異常,finally塊中的代碼都會被執行。