日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

利用python進行文件操作

瀏覽:22日期:2022-07-03 11:19:29

作者: wyh草樣

出處:https://www.cnblogs.com/wyh0923/p/14084898.html

什么是文件

文件是系統存儲區域的一個命名位置,用來存儲一些信息,便于后續訪問。能夠在非易失性存儲器中實現持續性存儲,比如在硬盤上。當我們要讀取或者寫入文件時,我們需要打開文件;在操作完畢時,我們需要關閉文件,以便釋放和文件操作相關的系統資源,因此,文件操作的主要包括以下:

打開文件

讀取或者寫入 關閉文件 打開文件

Python使用內置的open()函數打開一個文件,并且返回一個文件對象,也叫句柄(handle)。

f = open('test.txt') # 在本文件夾下面的一個文件f = open('C:/Python33/README.txt') # 全路徑

再打開文件時,我們需要指定文件打開的模式,當我們需要讀取文件時,使用f = open('test.txt', ’r’),寫入文件時,使用f = open('test.txt', ’w’),追加輸入時f = open('test.txt', ’a’),這里的a就是append的意思。追加模式和寫入模式的區別就是,寫入模式打開一個文件時,無論這個文件是否有內容,都會被清空再寫入;在使用追加模式時,打開的文件,只是在原有的內容上繼續進行寫入。同時我們也要制定以文本模式打開還是二進制模式打開。

文本模式(text mode)和二進制(binary mode)模式的區別

文本模式中,讀取時操作系統的換行符(’n’ on Unix,’rn’ on Windows)會被轉換成Python的默認換行符n,寫入時會將默認的換行符轉換為操作系統的換行符;在二進制模式中不會轉換。這個轉化在對文本文件沒有影響,但是對于二進制數據會有影響,比如圖像文件或者EXE文件等。因此, 再打開這類文件時,一般使用二進制模式進行讀寫

常用模式

r 文本模式,讀取 rb 二進制模式,讀取 w 文本模式,寫入 wb 二進制模式,寫入 a 文本模式,追加 ab 二進制模式,追加 + 可讀可寫

f = open('test.txt', ’r’) # 讀模式f = open('test.txt', ’w’) # 寫模式f = open('img.bmp',’r+’) # 可讀可寫f = open('img.bmp',’w+’) # 可讀可寫f = open('img.bmp',’rb’) # 二進制讀取

如何關閉文件

當文件操作結束時,我們最好主動關閉文件。盡管Python有垃圾回收(garbage collector)機制,去清理不用的對象,但是最好還是自己關閉文件。最簡單的方法就是:

f = open('app.log', ’r’)do_something()f.close()

但是這個辦法不安全,因為在進行其他操作時,可能會出現異常,程序退出,那么關閉文件的語句就不會被執行。因此,可以用語句來處理:

try: f = open(’app.log’, ’r’) do_something()finally: f.close()

無論是否發生異常,關閉文件的指令都會被執行。但是python官方給出的最佳用法是:

with open(’app.log’, ’r’) as f: do_something()

使用這種用法,我們不必調用close()方法,在with語句程序內部就會執行,無論內部是否出現異常。with語句被稱為上下文管理器,我們可以暫且不管這個的原理,只需要知道使用with語句,關閉文件的操作會被自動執行,這也是官方推薦的最佳用法,比用語句寫起來簡單。

文件操作

寫入文件主要介紹兩個方法:

1.write()方法這個方法的參數是一個單獨的字符串,比如:

lines = [’line1’, ’line2’]with open(’filename.txt’, ’w’) as f: s = ’’ for data in lines: s += data s += ’n’ f.write(s)

其實更好的寫法是使用join函數:

lines = [’line1’, ’line2’]with open(’filename.txt’, ’w’) as f: f.write(’n’.join(lines))

其實更加優雅的寫法,可以使用生成器:

lines = [’line1’, ’line2’]with open(’filename.txt’, ’w’) as f: f.writelines('%sn' % l for l in lines)

讀取文件

這里介紹四種用法,后面都默認文件已經被打開了:1.read()方法

result = f.read()

這里返回的是文件內容,是str類型的結果,這個方法還帶一個數值類型的參數,指定讀取多少內容,如果省略了或者是負數,那么就返回文件的全部內容。2.readline()方法

result = f.readline()

返回的也是字符串,不過是一行內容,繼續調用,就會返回下一行內容3.readlines()方法

result = f.readlines()

這里返回的是一個列表,但是當數據較大時,這樣的用法會很占用內存,不推薦在數據量大時使用4.直接循環文件對象

for line in f: print line do_something()

這樣的用法節省內存,快速,并且代碼還簡單

result = f.readlines()------------------------result = list(f)

這兩種寫法返回的結果是一樣的顯然我們推薦第四種用法。

如何處理大文件大文件主要問題在于占用內存較大,我們不能一下子將文件全部內容讀入內存,最好的做法如下:

with open('log.txt') as f: for line in f: do_something_with(line)

一行一行讀取,內存不會爆,同時速度也更快,使用with語句,無論內部是否出現異常,在結束時,文件對象都會被關閉,因此在處理大文件時,最好這樣來做。

以上就是利用python進行文件操作的詳細內容,更多關于python 文件操作的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产精品a级| 日本欧洲一区二区| 久久国产精品久久久久久电车| 久久久久久色 | 成人污污视频| 国产毛片一区二区三区| 国产色噜噜噜91在线精品| 日韩精品免费观看视频| 欧美日韩网址| 91精品在线免费视频| 国产欧美日韩一区二区三区四区| 蜜桃视频一区二区三区在线观看| 六月天综合网| 日本亚洲欧美天堂免费| 国产欧美大片| 狠狠久久伊人中文字幕| 国产a亚洲精品| 久久久噜噜噜| 亚洲香蕉久久| 欧美精品99| 日本欧美不卡| 一级成人国产| 精品国产亚洲一区二区三区大结局| 精品视频网站| 久久国产亚洲| 天堂精品久久久久| 国产精品对白| 国产尤物精品| 日韩精品亚洲专区| yellow在线观看网址| 在线视频精品| 国产精品magnet| 激情久久中文字幕| 欧美视频一区| 日韩视频一区二区三区在线播放免费观看 | 国产综合激情| 亚洲另类av| 国产66精品| 免费精品视频最新在线| 日本久久精品| 日韩精品免费视频人成| 久久一区二区中文字幕| 国产精品亚洲人成在99www| 久久只有精品| 亚洲一区二区成人| 成人污污视频| 欧美日韩亚洲一区二区三区在线| 99久久久久| 福利一区在线| 欧美日韩一区二区高清| 香蕉视频成人在线观看| 精品日韩在线| 日韩欧美在线精品| 影视先锋久久| 精品亚洲a∨一区二区三区18| 欧美日韩国产综合网| 夜鲁夜鲁夜鲁视频在线播放| 日本久久二区| 日本电影久久久| 亚洲日本三级| 亚洲精选久久| 久久av在线| 中文日韩在线| 亚洲天堂黄色| 欧美肉体xxxx裸体137大胆| 中文字幕在线视频网站| 69堂精品视频在线播放| 中文在线日韩| 午夜电影一区| 日本不卡在线视频| 欧美偷窥清纯综合图区| 日本不卡视频在线观看| 日韩精品免费视频人成| 日韩av资源网| 欧美在线首页| 国产精品最新| 国产成人调教视频在线观看| 97精品国产| 一区二区亚洲精品| 日韩美女国产精品| 国产精品日韩精品中文字幕| 亚洲一二av| 欧美一区精品| 精品美女在线视频| 亚洲永久av| 伊人久久大香线蕉av超碰演员| 女人天堂亚洲aⅴ在线观看| 免费人成黄页网站在线一区二区 | 嫩呦国产一区二区三区av| 激情视频网站在线播放色| 日韩深夜视频| 亚洲黄色在线| 国产美女久久| 蜜臀91精品国产高清在线观看| 国产亚洲在线观看| 69堂免费精品视频在线播放| 日韩精品2区| 亚洲免费观看高清完整版在线观| 蜜桃精品视频| 激情婷婷综合| 国产日韩中文在线中文字幕| 免费高潮视频95在线观看网站| 自拍自偷一区二区三区| 久久精品资源| 日本中文字幕一区二区| 91精品久久久久久久久久不卡| 日本午夜精品一区二区三区电影| 天堂av在线| 国产欧美一区二区精品久久久| 黄色亚洲免费| 麻豆视频久久| 亚洲欧美日韩视频二区| 精品国产网站| 欧美日韩亚洲一区二区三区在线| 桃色一区二区| 精品国产亚洲一区二区在线观看| 亚洲精品欧美| 99国产精品99久久久久久粉嫩| 国产成人精品一区二区三区免费 | 日韩亚洲一区在线| 国产欧美一区二区精品久久久| 亚洲一区二区三区免费在线观看| 福利一区二区免费视频| 日韩二区在线观看| 免费看黄色91| 亚洲人亚洲人色久| 一区在线观看| 91精品一区二区三区综合| 国产精品videossex| 国产欧美大片| 美腿丝袜在线亚洲一区| 国产亚洲精aa在线看| 日本精品一区二区三区在线观看视频| 欧美日韩第一| 色爱综合网欧美| 精品一区二区三区中文字幕在线| 国产精品115| 国产精品免费大片| 麻豆精品一区二区综合av| 国产精品一区二区三区av| 国产欧美日韩精品一区二区免费| 国产精品hd| 伊伊综合在线| 国产精品99一区二区| 亚洲一区区二区| 天堂久久av| 嫩草伊人久久精品少妇av杨幂 | 国产精品一区免费在线| 国产精品色婷婷在线观看| 精品一区二区三区中文字幕| 国产精品毛片久久| 国产婷婷精品| 欧美在线观看天堂一区二区三区| 免费一级欧美片在线观看网站| 亚洲黄色中文字幕| 夜久久久久久| 国产日韩高清一区二区三区在线 | 97久久中文字幕| 高潮一区二区| 亚洲精品中文字幕99999| 久久精品国产亚洲一区二区三区| 美女精品久久| 黄色亚洲精品| 精品淫伦v久久水蜜桃| 在线亚洲精品| 麻豆精品在线观看| 亚洲高清毛片| 国产精品一区亚洲| 亚洲一级黄色| 欧美天堂在线| 亚洲成人一区| 精品女同一区二区三区在线观看| 天堂√8在线中文| 久久精品超碰| 日韩在线a电影| 日韩在线免费| 欧美在线看片| 久久成人精品| 宅男在线一区| 国产精品欧美三级在线观看 | 亚洲激情婷婷| 韩国三级一区| 日韩成人免费| 久久久91麻豆精品国产一区| 日韩欧美三区| 天堂久久av| 日韩精品导航| 日韩精品欧美大片| 亚洲精品无播放器在线播放| 久久影院一区| 国产自产自拍视频在线观看| 日韩精品社区| 五月国产精品| 亚洲日本欧美| 视频一区日韩| 91精品麻豆| 国产调教精品| 国产精品一区二区精品| 欧美亚洲人成在线| 国产精品亚洲四区在线观看|