Ich habe eine Textdatei n
Textzeilen in der folgenden Form enthält:Wie extrahiere ich jedes aufeinanderfolgende Zeilenpaar effizient aus einer Datei?
line_1
line_2
line_3
.
.
.
line_n_minus_1
line_n
Ich wünsche jedes aufeinanderfolgende Paar von Linien zu extrahieren, (dh line_1
und line_2
, line_2
und line_3
und so weiter, bis line_n_minus_1
und), tun Sie etwas mit jedem extrahierten Paar und machen Sie dies bis line_n_minus_1
und line_n
. Wie würde ich bei großen Dateien effizient vorgehen?
das ist, was ich im Sinne hatte:
from itertools import tee, izip
def pairwise(iterable):
"s -> (s0,s1), (s1,s2), (s2, s3), ..."
a, b = tee(iterable)
next(b, None)
return izip(a, b)
with open("file.txt","r") as f:
list_of_lines = f.readlines()
for i in pairwise(list_of_lines):
# do something with the pair tuple i
aber ich hasse auf readlines()
zu verlassen, da ich möglicherweise mit großen Textdateien arbeiten würde. Gibt es einen besseren Weg, dies zu tun?
Thank you! Das hat sehr geholfen. –