如何使用python讀寫文件焰望?

今天小編要跟大家分享的文章是如何使用python讀寫文件?熟悉python的小伙伴們都知道python對文件的讀寫在程序開發(fā)中也是非常常見的操作已亥,比如寫入一些簡單的系統(tǒng)日志、把爬蟲采集的數(shù)據(jù)寫入到本地文件等等来屠,python入門新手和正在python學(xué)習(xí)的小伙伴快來看一看吧虑椎,希望能夠?qū)Υ蠹矣兴鶐椭?!

今天我們就詳細(xì)說下怎么用 python去讀寫一個文件俱笛。

<img src="http://www.magedu.com/wp-content/uploads/2019/12/timg-4.jpg" alt="如何使用python讀寫文件捆姜?" class="wp-image-81545"/>

1、python 寫入文件

<img src="http://python.tedu.cn/upload/20190515/20190515105000_593.png" alt="零基礎(chǔ)Python教程"/>

open(‘xxx.txt’,’w’)迎膜,’w’ 表示以寫的模式打開文件泥技,在寫之前要先找到這個文件,如果文件不存在磕仅, python 則會先自動創(chuàng)建該文件珊豹,然后再寫入內(nèi)容。

注意程序?qū)懭氲膬?nèi)容并不一定立刻就寫入硬盤了榕订,往往是先寫入到內(nèi)存中店茶,然后再根據(jù)的系統(tǒng)的空閑時間慢慢從內(nèi)存寫入硬盤中,等到調(diào)用 close 方法的時候才會確認(rèn)把內(nèi)存中剩下的數(shù)據(jù)寫入到硬盤劫恒。

所以一旦我們忘記主動調(diào)用 close 來關(guān)閉文件的話贩幻,或者在程序?qū)懭胛募臅r候出現(xiàn)異常終止程序從而不會再繼續(xù)往下執(zhí)行 close 方法轿腺,就可能導(dǎo)致部分?jǐn)?shù)據(jù)丟失,為了避免這種情況丛楚,我們推薦使用 with 這種方式來打開文件族壳,使用 with 即不管是程序在完成對文件寫入操作之后還是程序?qū)懭胛募惓=K止都會自動調(diào)用 close 方法來關(guān)閉文件

<img src="http://python.tedu.cn/upload/20190515/20190515105103_772.png" alt="零基礎(chǔ)python教程"/>

如果重復(fù)對一個文件寫入內(nèi)容,會不會對已經(jīng)存在的內(nèi)容有影響呢趣些,答案是會的仿荆。

python 的文件寫模式分覆蓋寫和追加寫。剛剛上面提到的 ‘w’ 模式就是覆蓋寫喧务,即每次以 ‘w’ 模式打開文件都會先直接清空該文件赖歌,注意是只要一打開就會先清空即使你不寫入任何內(nèi)容。還有一種就是使用 ‘a(chǎn)’ 追加模式功茴,這種模式不會清空文件中原有的內(nèi)容庐冯,只會在原有內(nèi)容后面繼續(xù)追加新的內(nèi)容。

2坎穿、python 讀文件

<img src="http://python.tedu.cn/upload/20190515/20190515105210_966.png" alt="零基礎(chǔ)Python教程"/>

讀文件和寫文件類似展父,只不過是以讀的模式打開文件,open(‘xxx.txt’,’r’)玲昧,’r’ 表示以只讀模式打開文件栖茉,讀模式打開文件需要確認(rèn)文件已經(jīng)存在,如果文件不存在程序會報找不到文件的錯誤孵延。

如果文件打開成功吕漂,接下來會調(diào)用 read 方法來一次性把文件的所有內(nèi)容讀到內(nèi)存當(dāng)中,最后再需要調(diào)用 close 來關(guān)閉文件尘应。文件的讀寫操作完成之后都需要關(guān)閉文件惶凝,不然一直打開的文件會占用系統(tǒng)資源。

同樣的犬钢,由于文件的讀寫過程中可能會出現(xiàn)異常苍鲜,導(dǎo)致不能執(zhí)行后面的 close 方法來關(guān)閉文件,所以跟上面提到的文件的寫入一樣玷犹,我們也推薦使用 with 來打開文件混滔,總之,對于文件的讀寫操作歹颓,都推薦使用 with 方式來打開坯屿。

<img src="http://python.tedu.cn/upload/20190515/20190515105250_930.png" alt="零基礎(chǔ)Python教程"/>

如果一個文件很大,有幾十個 G 巍扛,那么把所有的內(nèi)容一次性讀到內(nèi)存中肯定不現(xiàn)實愿伴,這時候我們可以循環(huán)讀文件,每次只讀指定大小的內(nèi)容电湘,read(size) 表示只讀取 size 字節(jié)的數(shù)據(jù)隔节。

<img src="http://python.tedu.cn/upload/20190515/20190515105400_549.png" alt="零基礎(chǔ)python教程"/>

也有的文件內(nèi)容是按行寫入的鹅经,比如常見的 config 配置文件,我們還可以使用 readline() 可以按行來讀取內(nèi)容怎诫,也可以把文件所有內(nèi)容先按行讀取最后放到一個數(shù)組 list 中返回瘾晃。

<img src="http://python.tedu.cn/upload/20190515/20190515105447_43.png" alt="零基礎(chǔ)python教程"/>

實際上不同的文件會有不同的編碼格式,上面我們講的都是基于 utf-8 編碼格式的文件幻妓,如果要打開非 utf-8 的文件蹦误,還需要使用 open(‘xxx.txt’,’r’,encoding=’gbk’) 這種方式來指定文件的編碼。

3肉津、二進(jìn)制文件讀寫

我們上面講的都是默認(rèn)的文本文件强胰,還有常見的圖片、音視頻等二進(jìn)制文件怎么用 python 讀寫呢妹沙,其實只需要使用 ‘rb’ 和 ‘wb’ 這兩種模式就可以對二進(jìn)制文件進(jìn)行讀寫了偶洋。

<img src="http://python.tedu.cn/upload/20190515/20190515105528_825.png" alt="零基礎(chǔ)Python教程"/>

以上就是小編今天為大家分享的關(guān)于如何使用python讀寫文件的文章,希望本篇文章能夠?qū)φ?b>python學(xué)習(xí)和從事python相關(guān)工作的小伙伴們有所幫助距糖,想要了解更多相關(guān)知識記得關(guān)注馬哥教育官網(wǎng)玄窝。最后祝愿小伙伴們工作順利!

免責(zé)聲明:內(nèi)容和圖片源自網(wǎng)絡(luò)悍引,版權(quán)歸原作者所有恩脂,如有侵犯您的原創(chuàng)版權(quán)請告知,我們將盡快刪除相關(guān)內(nèi)容趣斤。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末俩块,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子浓领,更是在濱河造成了極大的恐慌典阵,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件镊逝,死亡現(xiàn)場離奇詭異坑赡,居然都是意外死亡锯蛀,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進(jìn)店門蛾狗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來玄渗,“玉大人座菠,你說我怎么就攤上這事√偈鳎” “怎么了浴滴?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長岁钓。 經(jīng)常有香客問我升略,道長微王,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任品嚣,我火速辦了婚禮炕倘,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘翰撑。我一直安慰自己罩旋,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布眶诈。 她就那樣靜靜地躺著涨醋,像睡著了一般。 火紅的嫁衣襯著肌膚如雪逝撬。 梳的紋絲不亂的頭發(fā)上浴骂,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天,我揣著相機(jī)與錄音球拦,去河邊找鬼靠闭。 笑死,一個胖子當(dāng)著我的面吹牛坎炼,可吹牛的內(nèi)容都是我干的愧膀。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼谣光,長吁一口氣:“原來是場噩夢啊……” “哼檩淋!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起萄金,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤蟀悦,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后氧敢,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體日戈,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年孙乖,在試婚紗的時候發(fā)現(xiàn)自己被綠了浙炼。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡唯袄,死狀恐怖弯屈,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情恋拷,我是刑警寧澤资厉,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站蔬顾,受9級特大地震影響宴偿,放射性物質(zhì)發(fā)生泄漏湘捎。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一酪我、第九天 我趴在偏房一處隱蔽的房頂上張望消痛。 院中可真熱鬧,春花似錦都哭、人聲如沸秩伞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽纱新。三九已至,卻和暖如春穆趴,著一層夾襖步出監(jiān)牢的瞬間脸爱,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工未妹, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留簿废,地道東北人。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓络它,卻偏偏與公主長得像族檬,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子化戳,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內(nèi)容