Python中異常機制

2021-10-04 01:29:42 字數 1863 閱讀 3120

語法錯誤:寫的時候發現問題

異常:執行的時候發生錯誤

示例:

#異常

def chu(a,b):

sum= a/b

return

sumprint(chu(1,0))

#zerodivisionerror: division by zero

格式:

try:

可能出現異常的**

except:

如果有異常執行的**

[finally:

無論是否存在異常都會被執行的**]

情況1

try:

有可能產生多種異常

except 異常的型別1:

print(

....

)except 異常型別2 :

pass

注:如果是多個except,異常型別的順序需要注意,最大的exception要放到最後。可以參考python----內建異常類層次結構

情況2獲取exception的錯誤原因:

try:

有可能產生多種異常

except 異常的型別1:

print(

....

)except 異常型別2 :

pass

except exception as err:

print(err) ----> err的內容就是錯誤原因

示例

def func(

): try:

n1 = int(input(

"輸入第乙個數字:"

)) n2 = int(input(

"輸入第二個數字:"

))# + 加法

sum= n1+n2

print(

"和是:",sum)

#操作列表

list1 =

list1.pop(

) except zerodivisionerror:

print(

'除數不能為零'

) except valueerror:

print(

'必須輸入數字!!!!'

) except exception as err:

print(

'出錯了!',err)

#直接輸出報錯的原因

func(

)

使用try 與 else,else中的**只有在try**邏輯中沒有異常的情況下才會執行!

try 與finally,finally中的**不管try中的**邏輯是否有異常,一定會執行finally中的**邏輯!(try中含有return也要執行)

#註冊 使用者名稱必須6位

def register(

): username = input(

"輸入使用者名稱:"

)if len(username)

< 6:

raise exception(

'使用者長度必須6位以上'

)#提示錯誤的異常資訊!

else:

print(

'輸入的使用者名稱是:',username)

try:

register(

)except exception as err:

print(err)

print(

'註冊失敗!'

)else:

print(

'註冊成功!'

)

python中的異常處理機制

try except 語句 接受異常 語法 try 可能觸發異常的語句塊 except 錯誤型別1 as 變數1 變數繫結的是異常物件 該錯誤對應的語句塊 except 錯誤型別2 as 變數2 該錯誤對應的語句塊 except 錯誤型別3,錯誤型別4 不同型別的異常對應相同的操作,錯誤型別儲存在乙...

python的中異常處理機制

什麼是異常處理 定義 異常處理就是我們在寫python時,經常看到的報錯資訊,例如 nameerror typeerror valueerror等,這些都是異常。異常是乙個事件,改事件會在程式執行過程中發生,影響程式的正常執行,一般情況下,在python中無法處理程式時就會發生異常,異常時pytho...

C 中異常機制

在程式執行時,可能會有一些隱藏的bug突然爆發,導致程式崩潰。遇到這樣的情況除錯起來難度較大,因此c 提供了一種異常不住丟擲機制,在不確定安全或者懷疑有重大隱患的 塊前面加上try關鍵字,後面使用catch關鍵字捕捉,如果捕捉到異常,可以在catch 塊中使用throw關鍵字丟擲異常。用法如下 tr...