這篇文章給大家分享的是有關(guān)python關(guān)鍵字with的使用方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
成都創(chuàng)新互聯(lián)總部坐落于成都市區(qū),致力網(wǎng)站建設(shè)服務(wù)有成都做網(wǎng)站、成都網(wǎng)站建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷策劃、網(wǎng)頁設(shè)計、網(wǎng)站維護(hù)、公眾號搭建、微信小程序、軟件開發(fā)等為企業(yè)提供一整套的信息化建設(shè)解決方案。創(chuàng)造真正意義上的網(wǎng)站建設(shè),為互聯(lián)網(wǎng)品牌在互動行銷領(lǐng)域創(chuàng)造價值而不懈努力!
首先with的作用:
使用with后不管with中的代碼出現(xiàn)什么錯誤,都會進(jìn)行對當(dāng)前對象進(jìn)行清理工作。
例如file的file.close()方法,無論with中出現(xiàn)任何錯誤,都會執(zhí)行file.close()方法
我們知道使用try-except-finally語句可以處理異常,接下來我們介紹使用with語句處理與異常相關(guān)的工作
with語句支持創(chuàng)建資源,拋出異常,釋放資源等操作,并且代碼簡潔。
with語句格式
with 上下文表達(dá)式 [as 資源對象]: 對象操作 說明:
上下文表達(dá)式,返回一個上下文管理對象
如果指定了as語句,該對象并不賦值給as子句中的資源對象,而是將上下文管理器的__enter__()方法的返回值賦值給了資源對象。
資源對象可以是單變量,也可以是元組。
python學(xué)習(xí)網(wǎng),免費的python學(xué)習(xí)網(wǎng)站,歡迎在線學(xué)習(xí)!
使用with語句操作文件對象
with open("/test.txt") as file: for aline in file: print(aline)
解釋說明: 這段代碼使用with語句打開文件,如果順路打開,則將文件對象賦值給file,然后用for語句遍歷打印文件的每一行。當(dāng)文件操作結(jié)束后,with語句關(guān)閉文件。如果這段代碼運行過程中發(fā)生異常,with也會將文件關(guān)閉。
這段代碼使用finally語句實現(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語句加上異常處理:
try: with open("/test.txt") as file: for aline in file: print(aline) except Exception as error: print(error)
通過對比可以發(fā)現(xiàn):with語句在進(jìn)行異常處理時代碼簡潔很多.
感謝各位的閱讀!關(guān)于python關(guān)鍵字with的使用方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!