Python異常處理

2022-06-01 22:06:09 字數 2501 閱讀 1956

1、try...except

我們寫程式的時候,會出現一些錯誤或異常,導致程式終止。例如,做除法時,除數為0,會引起乙個zerodivisionerror,例如:

a=5b=0

c=a/b

print

(c)#

以上執行結果丟擲異常:

traceback (most recent call last):

file

"d:/test/pythonlianxi/day8/異常處理.py

", line 25, in

c=a/b

zerodivisionerror: division by zero

程式因為zerodivisionerror而中斷了,語句print 沒有執行。為了處理異常,我們使用try...except,更改**:

a=10b=0

try:

c=a/b

print

(c)except

zerodivisionerror as e: #這個e代表錯誤資訊,如果上面的兩行**出現了zerodivisionerror這個錯

print

(e)print('

除數不能為0

')

執行結果:

division by zero

除數不能為0

這樣程式就不會因為異常而中斷,從而print('除數不能為0')語句正常執行,我們把可能發生錯誤的語句放在try模組裡,用except來處理異常。except可以處理乙個專門的異常,也可以處理一組圓括號中的異常,如果except後沒有指定異常,則預設處理所有的異常。每乙個try,都必須至少有乙個except

捕獲所有異常:如果不知道**會發生什麼樣的異常,但是也想把異常捕捉到該怎麼處理呢,可以使用exception,這樣**就不會因為異常而終止執行,例如:

a=10b=0

try:

c=a/b

print

(c)except exception as e:#

這個e代表錯誤資訊,如果上面的兩行**出錯

print

(e)

print('

出錯了')

執行結果:

division by zero

出錯了2、try ....except...else 語句

當沒有異常發生時,else中的語句將會被執行,else語句不是必須寫的,也可以不寫。例如:

a=10b=5

try:

c=a/b

#print (c)

except exception as e:#

這個e代表錯誤資訊,如果上面的兩行**出錯

print

(e)

print('

出錯了'

)else:#

沒有出錯,也不是必須寫的

print('

並沒有出錯

') #

這個是沒有異常的時候走

print(c)

執行結果:

並沒有出錯

2.03、try ...finally

無論異常是否發生,在程式結束前,finally中的語句都會被執行。例如:

出錯了:

a=10b=0

try:

c=a/b

except exception as e:#

這個e代表錯誤資訊,如果上面的兩行**出錯

print

(e)

print('

出錯了'

)else:#

沒有出錯,也不是必須寫的

print('

並沒有出錯

') #

這個是沒有異常的時候走

print

(c)finally:#

不管出錯或者沒有出錯都會執行它,也不是必須寫的。

print('

我是finally

')執行結果:

division by zero

出錯了我是finally

沒有出錯:

a=10b=5

try:

c=a/b

except exception as e:#

這個e代表錯誤資訊,如果上面的兩行**出錯

print

(e)

print('

出錯了'

)else:#

沒有出錯,也不是必須寫的

print('

並沒有出錯

') #

這個是沒有異常的時候走

print

(c)finally:#

不管出錯或者沒有出錯都會執行它,也不是必須寫的。

print('

我是finally

')執行結果:

並沒有出錯

2.0我是finally

python異常處理 Python 異常處理

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

python異常舉例 Python異常處理

1.1異常問題舉例 例一 i input 請輸入數字 請輸入數字 0 print i print 5 int i traceback most recent call last file line 1,in zerodivisionerror division by zero 上述 的報錯是除零的錯...

python異常處理

當你的程式中出現異常情況時就需要異常處理。比如當你開啟乙個不存在的檔案時。當你的程式中有一些無效的語句時,python會提示你有錯誤存在。下面是乙個拼寫錯誤的例子,print寫成了print。python是大小寫敏感的,因此python將引發乙個錯誤 print hello world file l...