Python最快的方式来读取大文本文件(几GB)

我有一个大文本文件(约7 GB)。我正在寻找是否存在阅读大文本文件的最快方法。我一直在阅读有关使用多种方法作为读取chunk-by-chunk以加快进程的过程。

例如,effbot建议

# File: readline-example-3.py

file = open("sample.txt") while 1: lines = file.readlines(100000) if not lines: break for line in lines: pass # do something**strong text**

为了每秒处理96,900行文本。其他作者建议使用islice()

from itertools import islice

with open(...) as f: while True: next_n_lines = list(islice(f, n)) if not next_n_lines: break # process next_n_lines

list(islice(f, n))将返回n文件的下一列表f在循环中使用它将为您提供大量n的文件

解决方案


with open(<FILE>) as FileObj: for lines in FileObj: print lines # or do some other thing with the line...

将在此时读取一行内存,并在完成后关闭文件...

本文首发于Python黑洞网,博客园同步更新

猜你喜欢

转载自www.cnblogs.com/pythonzhichan/p/11428053.html