python入門學習5 異常

2021-10-23 22:20:34 字數 2184 閱讀 9160

當程式檔案中有錯誤是,直譯器就不能繼續執行**,會給出錯誤提示

1.1、異常的語法:

try:

可能發生錯誤的**塊

except 異常型別:

出現異常執行的**

2.1、異常的體驗

try:

name_file = open("aa.txt", 'w+')

name_file.close()

except:

print("這裡有問題,程式執行不成功")

2.3、異常的型別

型別不同,報錯不同

2.1、捕獲指定異常	:確定報錯型別

try:

可能發生錯誤的**塊

except 異常型別:

出現異常執行的**

一般try下方脂肪一行嘗試執行的**

如果嘗試執行**的異常型別和要捕獲的異常型別不一致,則無法捕獲異常

2.2、捕獲多個指定異常 :不確定出現異常型別的時候

:把異常型別的名字放到except後,使用元組的方式進行書寫

try:

可能發生錯誤的**塊

except (異常型別1,異常型別1):

出現異常執行的**

try:

可能發生錯誤的**塊

except (異常型別1,異常型別1) as result:

print(result) # 可以列印異常報錯資訊

2.2、捕獲所有異常:

exception是所有程式異常類的父類

try:

可能發生錯誤的**塊

except exception as result:

print(result) # 可以列印異常報錯資訊

else:表示沒有異常要執行的**塊

try:

print(「執行的**塊」)

except 異常型別:

print(「出現異常執行的**塊」)

else:

print(「沒有異常執行的**塊」)

finally:無論有無異常執行的**塊

try:

print(「執行的**塊」)

except 異常型別:

print(「出現異常執行的**塊」)

else:

print(「沒有異常執行的**塊」)

finally:

print(「無論有無異常執行的**塊」)

拋出自定義異常的語法為 raise 異常類物件

自定義異常:將不滿足程式邏輯要求的**,捕獲異常,然後丟擲異常

先定義,後丟擲,最後捕獲

語法:class 類名(exception):

異常物件初始化

異常物件的描述資訊`在這裡插入**片

# 自定義異常

# 自定義異常繼承exception

class

yi_chang

(exception)

:def

__init__

(self, name_type)

: self.name_type =

type

(name_type)

def__str__

(self)

:return f'您輸入的異常物件型別不能是:'

defmain()

: name_list =[1

,2,3

] name_str =

'1,2,3'

try:

if yi_chang(name_str)

.name_type ==

type

(list()

):raise yi_chang(name_str)

except exception as result:

print

(result)

else

:print

("正常執行完成"

)# e_name = yi_chang(name_list)

# print(type(e_name))

# print(e_name.name_type)

main(

)

python入門之異常

1.1 異常是由於程式的錯誤或人為丟擲的錯誤的定義 1.2 異常可以分為兩大類 系統異常和主動丟擲的異常 例如 raise exception 丟擲異常了 3.1 所有的自定義異常都繼承exception類。例如 class myexception exception pass 4.1 異常捕捉中的...

Python入門 異常處理

第二部分 異常的處理 2.2 try except else 2.3 try except finally s 1.3 n int s int 只能傳入整型,此處傳入了浮點型ls 1 2,3 ls 5 1 3 只能是字串與字串相加 或者數字與數字相加,不能混用x 10y 0try z x y exc...

c 入門學習 異常

1.異常 1.1 異常的丟擲 異常丟擲使用throw關鍵字,使用語法為 throw 異常 異常是個物件,如int i 1 throw i等。也可以自定義乙個異常類,在必要的時候丟擲該異常類的例項 class myexception throw myexception 這裡不能使用throw myex...