Python之異常處理

2021-09-25 10:27:43 字數 2691 閱讀 1620

異常與錯誤有區別:異常可以**獲,而錯誤有時候無法**獲,語法錯誤會被ide檢查到,但是邏輯錯誤無法被知曉;

異常的產生有兩種方式:使用raise語句,顯式的丟擲異常,還有一種是由於**錯誤,直譯器丟擲的異常,如果沒有進行異常捕獲,就會中斷程式的執行;

try

:# 這裡會丟擲異常,因為0不能被整除

a =1/

0except exception:

print

('異常'

)如果你依然在程式設計的世界裡迷茫,

不知道自己的未來規劃,

對python感興趣,

797751,

裡面都是學習python的,

捕捉異常可以使用try/except語句;

try: 需要**獲異常的**塊;

except :處理捕獲到的異常;

baseexception

±- systemexit

±- keyboardinterrupt

±- generatorexit

±- exception

±- stopiteration

±- stopasynciteration

±- arithmeticerror

| ±- floatingpointerror

| ±- overflowerror

| ±- zerodivisionerror

±- assertionerror

±- attributeerror

±- buffererror

±- eoferror

±- importerror

| ±- modulenotfounderror

±- lookuperror

| ±- indexerror

| ±- keyerror

±- memoryerror

±- nameerror

| ±- unboundlocalerror

±- oserror

| ±- blockingioerror

| ±- childprocesserror

| ±- connectionerror

| | ±- brokenpipeerror

| | ±- connectionabortederror

| | ±- connectionrefusederror

| | ±- connectionreseterror

| ±- fileexistserror

| ±- filenotfounderror

| ±- interruptederror

| ±- isadirectoryerror

| ±- notadirectoryerror

| ±- permissionerror

| ±- processlookuperror

| ±- timeouterror

±- referenceerror

±- runtimeerror

| ±- notimplementederror

| ±- recursionerror

±- syntaxerror

| ±- indentationerror

| ±- taberror

±- systemerror

±- typeerror

±- valueerror

| ±- unicodeerror

| ±- unicodedecodeerror

| ±- unicodeencodeerror

| ±- unicodetranslateerror

±- warning

±- deprecationwarning

±- pendingdeprecationwarning

±- runtimewarning

±- syntaxwarning

±- userwarning

±- futurewarning

±- importwarning

±- unicodewarning

±- byteswarning

±- resourcewarning

class

xkdexception

(arithmeticerror)

:def

__init__

(self,):

pass

try

: a =

1 b =

0 result = a / b

except arithmeticerror:

print

('arithmeticerror'

)except exception as e:

print

(e)else

:print

('ok'

)finally

:print

(a)print

(b)如果你依然在程式設計的世界裡迷茫,

不知道自己的未來規劃,

對python感興趣,

797751,

裡面都是學習python的,

python之異常處理 Python之異常處理

異常物件 請大家執行如下 a 100 0 print a 就會發現直譯器顯示如下的錯誤提示 traceback most recent call last file x.py line 1,in a 100 0 zerodivisionerror division by zero 大家要學會看直譯器...

Python之異常處理

在程式執行過程中影響程式正常執行的內容,稱為異常 nameerror print a indexerror 索引錯誤 li 1,2,3,4 print li 8 keyerror d dict a 1,b 2 print d f zerodivisionerror 除0錯誤 print 10 2 2...

Python之異常處理

try ret int input num 正常執行的 print ret except valueerror 捕捉錯誤 print 請輸入數字 try ret int input num 正常執行的 print ret except valueerror 捕捉錯誤 print 請輸入數字 exce...