Python 是一門優秀的編程語言,廣泛應用于數據分析、人工智能等領域。文件的讀取在 Python 中也是很常見的操作,比如讀取一些日志、配置文件等。當我們需要讀取大文件時,如何進行增量讀取呢?
我們可以使用 Python 的readline()
函數以及循環的方式逐行讀取文本文件,實現增量讀取。
with open('file.txt', 'r') as f: while True: line = f.readline() if not line: break # 處理每一行數據
上述代碼中,使用open()
函數打開文件,指定為只讀模式。接著使用readline()
函數逐行讀取文件,如果文件讀取完畢,那么就退出循環。每次讀取完一行后,利用循環處理這一行數據。
如果我們需要讓程序從上次讀取的位置繼續讀取文件,可以在open()
函數中加入mode='rb+'
參數,然后使用read()
函數讀取指定大小的字節,再用seek()
函數移動文件指針到下一個需要讀取的位置。代碼如下:
with open('file.txt', 'rb+') as f: while True: chunk = f.read(1024) if not chunk: break # 處理每個數據塊 f.seek(-len(chunk), 1)
上述代碼中,通過指定參數rb+
以二進制模式打開文件,接著使用read()
函數讀取 1024 個字節大小的數據塊,程序處理完一個數據塊后,使用seek()
函數將文件指針移回到這個數據塊的開頭,從而實現了增量讀取。
上一篇python 讀文件單詞
下一篇vue定義json對象