Python執行異常管理解決方案

2022-10-04 14:45:24 字數 2010 閱讀 7341

1 前言

python使用被稱為異常的特殊物件來管理程式執行期間發生的錯誤。每當發生讓python不pcxiudcif知所措的錯誤時,它都會建立乙個異常物件。

如果你編寫了處理該異常的**,程式將繼續執行;如果你未對異常進行處理,程式將停止,並顯示乙個traceback,其中包含有關異常的報告。

異常是使用try-except**塊處理的。try-except**塊讓python執行指定的操作,同時告訴python發生異常時怎麼辦。

使用了try-except**塊時,即便出現異常,程式也將繼續執行。

2 運用try-except**塊

我們知道,除數是不能為0的,當程式設計師誤將除數設定為0時,將會出現zerodivisionerror錯誤。

實現**:

try:

print(6/0)

except zerodivisionerror:

print("you can not divide by zero!")

執行結果:

you can not divide by zero!

工作原理:

將可能出現錯誤的**放在try**塊中,如果執行無錯誤,將跳過except**塊;若導致了錯誤,python將查詢except**塊,並執行其中的**。

這樣一來,當執行出錯時,使用者看到的便是一條友好的錯誤資訊。

若try-except後面還有其他**,那麼程式將接著執行。

3 運用try-except-else**塊

實現**:

print("please input two numbers, and i will divide them.")

print("enter 'q' to quit.")

while true:

first_num = input("\nfirst number: ")

if first_num == 'q':

break

second_num = input("second number: ")

try:

answer = int(first_num) / int(second_num)

except zerodivisionerror:

print("you can not divide by zero!")

else:

print(answer)

執行結果:

工作原理:

一般地,將可能發生異常的**放在try代pcxiudcif碼塊中。

pyt程式設計客棧hon嘗試執行try**塊中**,如果發生錯誤,則執行except中程式**;如果執行正常,則執行else**塊中的**。

這樣一來,就有程式設計客棧效地避免了可能發生的錯誤帶來的程式崩潰問題,讓程式變得更加健壯。

4 運用pass語句

實現**:

while true:

first_num = input("\nfirst number: ")

if first_num == 'q':

break

second_num = input("second number: ")

try:

answer = int(first_num) / int(second_num)

except zerodivisionerror:

pass

else:

print(answer)

執行結果:

工作原理:

10 當**執行出錯時,python將會執行except**塊中的pass語句。pass語句既不會出現traceback,也沒有任何輸出。

此外,pass語句還可充當佔位符,用於提醒程式設計師該處還未定義任何語句,後面可能會定義語句。

5 小結

到這裡,我們就了解了一些處理異常的方式,我們可以根據不同的需求,決定是否向使用者報告錯誤以及怎樣報告錯誤,有效地避免一些異常帶來的程式崩潰。

本文標題: python執行異常管理解決方案

本文位址: /jiaoben/python/302510.html

python生成exe檔案執行閃退解決方法

使用pyinstaller生成.exe檔案 pyinstaller f filename.py用python寫了乙個程式,在python下執行是正常的,但是生成exe檔案後執行閃退 我當時懷疑是不是脫離的python直譯器就執行不了的問題,網上找了一通也沒有解決。1.可能是程式執行結束,視窗自然就默...

Python異常處理 跳過異常繼續執行

ython異常處理 跳過異常繼續執行 python一般使用try except 處理異常 try 可能會出現異常的 放在try下 code1 如果try內部任意一行 出現異常,直接跳轉至except,執行except下 code2 except code3 code4此方法只要有乙個異常,程式就不繼...

python 丟擲 python丟擲異常的方法

python丟擲異常的方法 閱讀 89 異常是python物件,表示乙個錯誤。當python指令碼發生異常時我們需要捕獲處理它,否則程式會終止執行。常見異常 attributeerror 呼叫不存在的方法引發的異常 eoferror 遇到檔案末尾引發的異常 importerror 匯入模組出錯引發的...