Python基礎03(異常處理)

2021-10-12 03:39:57 字數 4126 閱讀 9385

3 try-except-else語句

4 try-except-finally語句

5 自定義異常:raise語句

6 習題

try

: 可能發生異常的**

except:

如果出現異常執行的**

注意:使用except而不帶任何異常型別,這不是乙個很好的方式,我們不能通過該程式識別出具體的異常資訊,因為它捕獲所有的異常。

try

: 可能發生異常的**

except 異常型別1(exception) as 變數名:

# exception是任何異常型別

出現異常1後執行的**

except 異常型別2(exception) as 變數名:

# exception是任何異常型別

出現異常2後執行的**..

....

注意:使用多個except**塊時,必須堅持對其規範排序,要從最具針對性的異常到最通用的異常。

【例子】

try

: a =

int(

input

('請輸入除數(分母):'))

b =int(

input

('請輸入被除數(分子):'))

print

(b/a)

print

('異常檢測出來後,繼續執行的**'

)except zerodivisionerror as error:

print

('執行錯誤\n原因是:'

+str

(error)

)except valueerror as error:

print

('執行錯誤\n原因是:'

+str

(error)

)'''

請輸入除數(分母):0

請輸入被除數(分子):9

執行錯誤

原因是:division by zero

-------------------------

請輸入除數(分母):a

執行錯誤

原因是:invalid literal for int() with base 10: 'a'

'''

注意:如果try子句執行過程**現異常,那麼try子句後面的**不會再執行。

try

: 可能發生異常的**

except (異常型別1

,異常型別2,.

..) as 變數名:

捕獲其中乙個異常型別後執行的**

注意:如果不是指定的異常型別還是會報錯。

【例子】

try

: a =

int(

input

('請輸入除數(分母):'))

b =int(

input

('請輸入被除數(分子):'))

print

(b/a)

print

('異常檢測出來後,繼續執行的**'

)except

(zerodivisionerror,valueerror)

as error:

print

('執行錯誤\n原因是:'

+str

(error)

)'''

請輸入除數(分母):a

執行錯誤

原因是:invalid literal for int() with base 10: 'a'

'''

try

: 檢測範圍

except 異常型別 as 變數名:

出現異常後的處理**

else

: 如果沒有異常執行這塊**

【例子】

try

: a =

int(

input

('請輸入除數(分母):'))

b =int(

input

('請輸入被除數(分子):'))

print

(b/a)

except

(zerodivisionerror,valueerror)

as error:

print

('執行錯誤\n原因是:'

+str

(error)

)else

:print

('沒有異常,正確執行'

)'''

請輸入除數(分母):2

請輸入被除數(分子):4

2.0沒有異常,正確執行

'''

try

: 檢測範圍

except 異常型別 as 變數名:

出現異常後的處理**

finally

: 無論如何都會被執行的**

【例子】

try

: a =

int(

input

('請輸入除數(分母):'))

b =int(

input

('請輸入被除數(分子):'))

print

(b/a)

except

(zerodivisionerror,valueerror)

as error:

print

('執行錯誤\n原因是:'

+str

(error)

)else

:print

('沒有異常,正確執行'

)finally

:print

('無論如何都會執行我'

)'''

請輸入除數(分母):0

請輸入被除數(分子):2

執行錯誤

原因是:division by zero

無論如何都會執行我

'''

try

: a=

102if a>

100:

raise exception(

'數值大於100'

)except exception as error:

print

(error,

type

(error)

)# 數值大於100

import random

true_num=random.randint(0,

100)

print

('猜測乙個0-100之間的整數'

)try

:for i in

range(1

,101):

print

(f'第次猜,'

,end='')

user_num=

int(

input

('請輸入乙個整型數字:'))

if user_num > true_num:

print

('太大'

)if user_num < true_num:

print

('太小'

)if user_num == true_num:

print

(f'恭喜你猜到了這個數是'

)except valueerror:

print

('輸入無效'

)'''

猜測乙個0-100之間的整數

第1次猜,請輸入乙個整型數字:50

恭喜你猜到了這個數是50

--------------------------------

猜測乙個0-100之間的整數

第1次猜,請輸入乙個整型數字:a

輸入無效

'''

Python基礎 Task03 異常處理

異常就是執行期檢測到的錯誤。計算機語言針對可能出現的錯誤定義了異常型別,某種錯誤引發對應的異常時,異常處理程式將被啟動,從而恢復程式的正常執行。異常體系內部有層次關係,python異常體系中的部分關係如下所示 檢測範圍 except exception as reason 出現異常後的處理 try ...

DW學習 Python基礎03(異常處理)

3 try except else語句 4 try except finally語句 5 自定義異常 raise語句 6 習題 try 可能發生異常的 except 如果出現異常執行的 注意 使用except而不帶任何異常型別,這不是乙個很好的方式,我們不能通過該程式識別出具體的異常資訊,因為它捕獲...

python03 異常處理

1 異常處理 異常就是執行期檢測到的錯誤。計算機語言針對可能出現的錯誤定義了異常型別,某種錯誤引發對應的異常時,異常處理程式將被啟動,從而恢復程式的正常執行。異常體系內部有層次關係,python異常體系中的部分關係如下所示 2 標準警告總結 3 try except語句 try 檢測範圍 excep...