首頁(yè)技術(shù)文章正文

Python文件操作:finally子句的使用

更新時(shí)間:2021-07-27 來(lái)源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

finally子句與try-except語(yǔ)句連用時(shí),無(wú)論try-except是否捕獲到異常,finally子句后的代碼都要執(zhí)行,其語(yǔ)法格式如下:

try:
    可能出錯(cuò)的語(yǔ)句
    ......except:
    出錯(cuò)后的執(zhí)行語(yǔ)句finally:
    無(wú)論是否出錯(cuò)都會(huì)執(zhí)行的語(yǔ)句
Python在處理文件時(shí),為避免打開(kāi)的文件占用過(guò)多的系統(tǒng)資源,需要在完成對(duì)文件的操作后使用close()方法關(guān)閉文件。為了確保文件一定會(huì)被關(guān)閉,可以將文件關(guān)閉操作放在finally子句中。示例如下:
try:
    file = open('異常.txt', 'r')
    file.write("人生苦短,我用Python")
except Exception as error:
    print("寫(xiě)入文件失敗", error)
finally:
    file.close()
    print('文件已關(guān)閉')
若沒(méi)有finally語(yǔ)句,以上程序會(huì)因出現(xiàn)UnsupportedOperation異常而無(wú)法保證打開(kāi)的文件會(huì)被關(guān)閉;但使用finally語(yǔ)句后,無(wú)論程序是否崩潰,f.close()一定被執(zhí)行,文件必定會(huì)被關(guān)閉。






猜你喜歡:

Combiner和partition的作用分別是什么?

try-except語(yǔ)句與else子句聯(lián)合使用處理可能出現(xiàn)的程序異常

什么是匿名函數(shù)?它與普通函數(shù)有哪些不同?

黑馬程序員python+大數(shù)據(jù)開(kāi)發(fā)培訓(xùn)

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!