python3 open()内置函数
生活随笔
收集整理的這篇文章主要介紹了
python3 open()内置函数
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
操作文件時,一般需要:
- 打開文件
- 操作文件
一、打開文件:open(file[,mode=r])
- open() 函數(shù)用于打開一個文件,并返回文件對象,在對文件進(jìn)行處理過程都需要使用到這個函數(shù),如果該文件無法被打開,會拋出 OSError。
- open() 函數(shù)常用形式是接收兩個參數(shù):文件名(file)和模式(mode),即文件路徑file和以mode方式打開文件。
注意: 使用 open() 函數(shù)一定要保證關(guān)閉文件對象,即調(diào)用 close() 函數(shù)。
打開文件的模式
| r | 以只讀方式打開文件。文件的指針將會放在文件的開頭。這是默認(rèn)模式。 |
| w | 打開一個文件只用于寫入。如果該文件已存在則打開文件,并從開頭開始編輯,即原有內(nèi)容會被刪除。如果該文件不存在,創(chuàng)建新文件。 |
| a | 打開一個文件用于追加。如果該文件已存在,文件指針將會放在文件的結(jié)尾。也就是說,新的內(nèi)容將會被寫入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件進(jìn)行寫入。 |
更多mode參考
可讀模式r
//log.txt可讀模式下不存在會報錯。 f = open('log.txt' , 'r') f.close()可寫模式w
//沒有l(wèi)og.txt運行后會自動創(chuàng)建log.txt文件 f = open('log.txt' , 'w') f.close()追加模式a
//沒有l(wèi)og.txt運行后會自動創(chuàng)建log.txt文件 f = open('log.txt','a') f.close()剛開始沒有l(wèi)og.txt文件,運行后出現(xiàn)log.txt文件
二、 操作
f = open('log.txt','r') data = f.read() #讀文件 f.close() #關(guān)閉文件上面代碼存在的問題:如果在讀寫時出現(xiàn)異常忘了異常處理,不會執(zhí)行到關(guān)閉方法;有可能寫代碼忘了寫f.close()語句
解決:
運行說明:with后面接的對象返回的結(jié)果賦值給f。此例當(dāng)中open函數(shù)返回的文件對象賦值給了f;with會自已獲取上下文件的異常信息。
三、上下文管理,with如何工作?
-
with所求值的對象必須有一個__enter__()方法,一個__exit__()方法。
-
緊跟with后面的語句被求值后,返回對象的__enter__()方法被調(diào)用,這個方法的返回值將被賦值給as后面的變量。當(dāng)with后面的代碼塊全部被執(zhí)行完之后,將調(diào)用前面返回對象的__exit__()方法。
運行流程:
總結(jié)
以上是生活随笔為你收集整理的python3 open()内置函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: angular新版 父组件修改子组件某个
- 下一篇: python3 sys模块