Python讀取大型文字檔案

2021-09-13 04:10:48 字數 954 閱讀 2166

最近磕鹽過程中需要處理乙個大型文字檔案,大約70g。在按行讀取檔案過程中遇到了載入慢,記憶體占用過高的問題。經過查詢資料最終解決了問題。趁此機會也大致總結比較一下python開啟檔案的幾種方式。

f =

open

(filename, r)

lines = f.readlines(

)for line in lines:

operation on line...

f.close(

)

在這段**中,首先開啟指定檔名的檔案,然後從中讀取出所有的行,對每行執行一定的操作後關閉檔案。

注意,規範的檔案讀寫open方法和close方法一定是配對出現的,否則會出現讀寫錯誤。

需要指出的是,readlines()和readline()方法是通過將每行的內容轉化成類似於列表的物件。所以,這種讀取方式實際上需要把所有的內容都載入到記憶體中,然後再進行類似於列表的操作。記憶體占用極高,載入時間長。適合處理體積較小的文字檔案。

with

open

(filename,

"r")

as f:

for line in f.readlines():

operation on line.

..

with 表示式自動為程式結尾加上關閉操作。原理是with可以代替try…except…finally…這樣的複雜操作語句。簡潔由規範。

for line in

open

(filename,

"r")

: operation on line.

..

直接對open()返回的物件進行遍歷操作,不需要轉化為類列表物件,能夠實現按行讀取,而非全部載入,按行遍歷。親測執行很快。

Python讀取文字檔案

給定c data hello.txt,內容如下 jack hello,how are you?rose i m good.按行讀取 filepath r c data hello.txt with open filepath as txtfile for line in txtfile print ...

讀取文字檔案

void ctestdlg onreadinfo cfile filewrite1 testwrite1.txt cfile modecreate cfile modewrite cfile filewrite2 testwrite2.txt cfile modecreate cfile modew...

Python 讀取txt文字檔案

python的文字檔案的內容讀取中,有三類方法 read readline readlines 這三種方法各有利弊。read read 的弊端 readline readline 的弊端 readlines readlines 的利端 readlines 的弊端 最簡單 最快速的逐行處理文字的方法 ...