Подтвердить что ты не робот

Python - самый быстрый способ чтения большого текстового файла (несколько GB)

У меня есть большой текстовый файл (~ 7 ГБ). Я ищу, если существует самый быстрый способ чтения большого текстового файла. Я читал об использовании нескольких подходов, как чтение 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

4b9b3361

Ответ 1

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

будет считывать одну строку в то время в память и закрывать файл по завершении...