新聞中心
這篇文章將為大家詳細(xì)講解有關(guān)python中with拋錯(cuò)的方法,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)建站是一家專注于成都做網(wǎng)站、成都網(wǎng)站制作與策劃設(shè)計(jì),靈臺(tái)網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)建站做網(wǎng)站,專注于網(wǎng)站建設(shè)10年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:靈臺(tái)等地區(qū)。靈臺(tái)做網(wǎng)站價(jià)格咨詢:13518219792
使用with后不管with中的代碼出現(xiàn)什么錯(cuò)誤,都會(huì)進(jìn)行對(duì)當(dāng)前對(duì)象進(jìn)行清理工作。
例如file的file.close()方法,無(wú)論with中出現(xiàn)任何錯(cuò)誤,都會(huì)執(zhí)行file.close()方法
我們知道使用try-except-finally語(yǔ)句可以處理異常,接下來(lái)我們介紹使用with語(yǔ)句處理與異常相關(guān)的工作
with語(yǔ)句支持創(chuàng)建資源,拋出異常,釋放資源等操作,并且代碼簡(jiǎn)潔。
with語(yǔ)句格式
with 上下文表達(dá)式 [as 資源對(duì)象]: 對(duì)象操作 說(shuō)明:
上下文表達(dá)式,返回一個(gè)上下文管理對(duì)象
如果指定了as語(yǔ)句,該對(duì)象并不賦值給as子句中的資源對(duì)象,而是將上下文管理器的__enter__()方法的返回值賦值給了資源對(duì)象。
資源對(duì)象可以是單變量,也可以是元組。
使用with語(yǔ)句操作文件對(duì)象
with open("/test.txt") as file:
for aline in file:
print(aline)解釋說(shuō)明: 這段代碼使用with語(yǔ)句打開文件,如果順路打開,則將文件對(duì)象賦值給file,然后用for語(yǔ)句遍歷打印文件的每一行。當(dāng)文件操
作結(jié)束后,with語(yǔ)句關(guān)閉文件。如果這段代碼運(yùn)行過(guò)程中發(fā)生異常,with也會(huì)將文件關(guān)閉。
這段代碼使用finally語(yǔ)句實(shí)現(xiàn)如下:
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)我們也可以給with語(yǔ)句加上異常處理:
try:
with open("/test.txt") as file:
for aline in file:
print(aline)
except Exception as error:
print(error)通過(guò)對(duì)比可以發(fā)現(xiàn):with語(yǔ)句在進(jìn)行異常處理時(shí)代碼簡(jiǎn)潔很多.
關(guān)于python中with拋錯(cuò)的方法就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。
新聞標(biāo)題:python中with拋錯(cuò)的方法
文章分享:http://www.dlmjj.cn/article/gihdso.html


咨詢
建站咨詢
