Python中異常處理

2021-08-14 08:40:20 字數 1406 閱讀 9236

python使用try...except...來處理異常,當python遇到乙個try語句,他會嘗試執行try語句體內的語句,如果執行這些語句沒有錯誤,控制轉移到try...except...後面的語句,如果語句體內發生錯誤,python會尋找乙個符合該錯誤的異常語句,然後執行處理**。

try:

except :

except :

else:

finally:

try體內如果無異常產生,則執行else語句;

無論try體內無論是否有異常,finally語句都會執行,finally一般是無論是否異常發生都要執行清理的工作,比如開啟後檔案需要關閉檔案的操作,連線網路後需要斷開網路的操作。

我們的測試**如下:

def main():

while true:

try:

number1, number2 = eval(input('enter two number,separated by a comma:'))

result = number1 / number2

except zerodivisionerror:

print('division by zero!')

except syntaxerror:

print('a comma may be missing in the input')

except:

print('something wrong in the input')

else:

print('no exception,the result is:', result)

break

finally:

print('executing the final clause')

main()

測試資料如下:

enter two number,separated by a comma:3,4

no exception,the result is: 0.75

executing the final clause

enter two number,separated by a comma:2,0

division by zero!

executing the final clause

enter two number,separated by a comma:

當我們輸入3,4時,**執行正常,執行else和finally語句;當我們輸入2,0 時,**執行except 

zerodivisionerror和finally語句。我們可以看到無論try中是否錯誤發生,都會執行finally語句。

python異常處理 Python 異常處理

使用者輸入不完整 比如輸入為空 或者輸入非法 輸入不是數字 異常就是程式執行時發生錯誤的訊號,在python中,錯誤觸發的異常如下 在python中不同的異常可以用不同的型別 python中統一了類與型別,型別即類 去標識,不同的類物件標識不同的異常,乙個異常標識一種錯 觸發indexerror 觸...

python 中的異常處理

python的異常處理能力是很強大的,可向使用者準確反饋出錯資訊。在python中,異常也是物件,可對它進行操作。所有異常都是基類exception的成員。所有異常都從基類exception繼承,而且都在exceptions模組中定義。python自動將所有異常名稱放在內建命名空間中,所以程式不必匯...

Python中的異常處理

當python檢測到乙個錯誤時,直譯器就無法繼續執行了,反而出現了一些錯誤的提示,這就是所謂的 異常 看如下示例 try print test1 open 123.txt r print test2 except ioerror pass此時可以正常執行,執行結果為 test1 說明 try exc...