Python手冊 3 異常處理

2021-10-06 08:58:44 字數 1783 閱讀 1278

3. 捕獲異常

# 內建異常型別

# exception

# attributeerror

# ioerror

# indexerror

# keyerror

# valueerror

# nameerror

# syntaxerror

# zerodivisionerror

class myexception(exception): pass

class myexception(exception):

def __init__(self, error_msg):

self.error_msg = error_msg

else:當沒有出現異常時執行

finally:不管如何都執行

其他:

def

exception_handle()

:try

:print

("try"

)raise valueerror # 丟擲特定異常

except indexerror as e:

# 捕獲乙個異常,並獲取異常物件

# 不對異常進行處理,繼續丟擲異常

raise

except

(keyerror, valueerror)

as e:

# 捕獲某兩類異常,並獲取異常物件

print

(e)except

:# 捕獲除了上述三種異常之外的所有異常

print

("except"

)raise

# 丟擲捕獲到的異常

else

:# 當沒有捕獲異常時執行

print

("else"

)finally

:# 不管是否捕獲異常,都要執行

print

("finally"

)

下面**的輸出結果是b c d

class

b(exception)

:pass

class

c(b)

:pass

class

d(c)

:pass

for cls in

[b, c, d]

:try

:raise cls(

)except d:

print

("d"

)except c:

print

("c"

)except b:

print

("b"

)

class

b(exception)

:pass~~

class

c(b)

:pass

class

d(c)

:pass

for cls in

[b, c, d]

:try

:raise cls(

)except b:

print

("b"

)except d:

print

("d"

)except c:

print

("c"

)

python 異常處理3

def set age age if age 0 or age 200 print 值錯誤 raise valueerror 值錯誤 else print 給張三的年齡設定為 age try set age 18 except exception as e print x e 什麼時候應該向外界丟擲...

Python3 異常處理

python3.5 異常處理 try用法 try except語句主要是用於處理程式正常執行過程中出現的一些異常情況 try finally語句則主要用於在無論是否發生異常情況,都需要執行一些清理工作的場合 完整語句中,else語句的存在必須以except x或者except語句為前提,也就是說el...

python3 異常處理

python中的異常捕獲 異常處理語句關鍵字有try except else finally,主要組合如下 1.不捕獲異常,不管是否異常仍要執行操作 finally 先執行finally中的語句,再丟擲異常。不捕獲異常,丟擲異常後,仍執行finally中的語句 try print 1 0 final...