with語句處理異常這份足夠了

2021-09-23 13:37:26 字數 1220 閱讀 6319

我們知道使用try-except-finally語句可以處理異常,接下來我們介紹使用with語句處理與異常相關的工作

with語句支援建立資源,丟擲異常,釋放資源等操作,並且**簡潔。

with 上下文表示式 [as 資源物件]:

物件操作

說明:

上下文表示式返回乙個上下文管理物件

如果指定了as語句,該物件並不賦值給as子句中的資源物件,而是將上下文管理器的__enter__()方法的返回值賦值給了資源物件。

資源物件可以是單變數,也可以是元組。

with

open

("/test.txt")as

file

:for aline in

file

:print

(aline)

解釋說明:這段**使用with語句開啟檔案,如果順路開啟,則將檔案物件賦值給file,然後用for語句遍歷列印檔案的每一行。當檔案操作結束後,with語句關閉檔案。如果這段**執行過程中發生異常,with也會將檔案關閉。

try

:file

=open

("/test.txt"

)try

:for aline in

file

:print

(aline)

except exception as error:

print

(error)

finally

:file

.close(

)except filenotfounderror as err:

print

(err)

try

:with

open

("/test.txt")as

file

:for aline in

file

:print

(aline)

except exception as error:

print

(error)

通過對比可以發現:with語句在進行異常處理時**簡潔很多

不是所有的物件都可以使用with語句,只有支援上=上下文管理協議的物件才可以。目前支援上下文管理協議的物件如下:

異常處理語句

在程式的編寫過程中會出現各種錯誤,語法錯誤在程式啟動時就會檢測出來,它是程式正常執行的前提條件。程式中還有一種錯誤發生在程式執行後,可能是由於邏輯問題,又或者是業務發生了改變,為了能讓使用者有更好的體驗,加強 的健壯性,我們需要對這些錯誤進行處理,也叫異常處理。在python中不同的異常可以用不同的...

C 語句異常處理語句

1,try.catch.finally 不會找到邏輯錯誤,try裡面放檢測 catch 捕捉到的異常,怎樣處理finally不管有沒有異常都會執行 try catch finally 3種組合 2,finally 很頑強 return後仍然會執行 3,4,excption的用法 exception是...

python 異常處理語句

異常處理 2 try 3 try 4 num input 請輸入兩個數字以空格隔開!5 num num.split 6 print num 7 print sum num 8 except valueerror 9 print 程式執行 現了type的錯誤!10 else 11 print 如果沒報...