Aufteilen großer Textdateien mit einem Trennzeichen in Python

8

Ich bebildere dies wird eine einfache Aufgabe sein, aber ich kann nicht finden, was ich genau in vorherigen StackOverflow Fragen suchen, um hier zu gehen ...

Ich habe große Textdateien in einem proprietry Format, die so aussehen:

%Vor%

Und so weiter.

Die Textdateien haben eine Größe von 10 KB bis 100 MB. Ich muss diese Datei mit dem :Entry Trennzeichen teilen. Wie könnte ich jede Datei basierend auf :Entry blocks bearbeiten?

    
Kevin 02.11.2011, 12:27
quelle

2 Antworten

13

Sie können iertools.groupby verwenden, um Zeilen, die nach :Entry auftreten, in Listen zu gruppieren :

%Vor%

ergibt

%Vor%

Oder, um die Gruppen zu bearbeiten, müssen Sie group nicht unbedingt in eine Liste konvertieren:

%Vor%     
unutbu 02.11.2011, 12:32
quelle
3

Wenn jeder Eintragsblock mit einem Doppelpunkt beginnt, können Sie sich einfach trennen:

%Vor%     
infrared 02.11.2011 12:32
quelle

Tags und Links