簡單了解Python讀取大文件代碼實例
這篇文章主要介紹了簡單了解Python讀取大文件代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
通常對于大文件讀取及處理,不可能直接加載到內(nèi)存中,因此進行分批次小量讀取及處理
I、第一種讀取方式
一行一行的讀取,速度較慢
def read_line(path): with open(path, 'r', encoding='utf-8') as fout: line = fout.readline() while line: line = fout.readline() print(line)
II、第二種讀取方式
設置每次讀取大小,從而完成多行快速讀取
def read_size(path): with open(path, "r", encoding='utf-8') as fout: while 1: buffer = fout.read(8 * 1024 * 1024) if not buffer: break print(buffer)
III、第三種讀取方式
使用itertools模塊,islice返回的是一個生成器,可以用list格式化
from itertools import islice def read_itertools(path): with open(path, 'r', encoding='utf-8') as fout: list_gen = islice(fout, 0, 5) # 兩個參數(shù)分別表示開始行和結(jié)束行 for line in list_gen: print(line)
完成
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python實現(xiàn)自動獲取IP并發(fā)送到郵箱
這篇文章主要為大家詳細介紹了python實現(xiàn)自動獲取IP并發(fā)到郵箱,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-12-12tkinter如何實現(xiàn)打開文件對話框并獲取文件絕對路徑
這篇文章主要介紹了tkinter實現(xiàn)打開文件對話框并獲取文件絕對路徑問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-01-01python解決No?module?named?pip問題兩種方法
當出現(xiàn)No module named pip錯誤時,表明您的Python環(huán)境缺少pip模塊,下面這篇文章主要給大家介紹了關(guān)于python解決No?module?named?pip問題的兩種方法,需要的朋友可以參考下2024-01-01pyspark連接mysql數(shù)據(jù)庫報錯的解決
本文主要介紹了pyspark連接mysql數(shù)據(jù)庫報錯的解決,因為spark中缺少連接MySQL的驅(qū)動程序,下面就來介紹一下解決方法,感興趣的可以了解一下2023-11-11