Ho un file di testo di grandi dimensioni (~ 7 GB). Sto cercando se esistano il modo più veloce per leggere file di testo di grandi dimensioni. Ho letto sull'uso di diversi approcci come letti chunk-by-chunk per accelerare il processo.Python modo più veloce per leggere un file di testo di grandi dimensioni (diversi GB)
a esempio effbot suggeriscono
# 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**
per elaborare 96.900 righe di testo al secondo. Altro authors suggeriscono di utilizzare 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))
restituirà un elenco dei prossimi n
righe del file f
. L'utilizzo di questo all'interno di un ciclo vi darà il file in blocchi di n
linee
Perché non vuoi controllare te stesso cosa è più veloce per te? – piokuc
Cehck i suggerimenti qui: http://stackoverflow.com/questions/14863224/efficient-reading-of-800-gb-xml-file-in-python-2-7 – BenDundee
@Nix non desidero leggere riga per riga, ma pezzo per pezzo –