Python fastest way to read a large text file (several GB)
本问题已经有最佳答案,请猛点这里访问。
我有一个大的文本文件(~7GB)。我正在寻找是否存在最快的方法来读取大文本文件。我一直在阅读关于使用几种方法逐块读取以加快进程的内容。
例如,effbot建议
1 2 3 4 5 6 7 8 9 10 | # 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** |
以每秒处理96900行文本。其他作者建议使用islice()。
1 2 3 4 5 6 7 8 | 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 |
1 2 3 | with open(<FILE>) as FileObj: for lines in FileObj: print lines # or do some other thing with the line... |
将一次读取一行到内存,完成后关闭文件…