Ich möchte die Anzahl der Zeilen in einer TXT-Datei zählen, die ungefähr so aussieht:
%Vor%Wo Leerzeilen zum Trennen von Blöcken verwendet werden. Das Ergebnis, das ich suche, ist, basierend auf dem obigen Beispiel, fünf (Zeilen).
Wie kann ich das erreichen?
Als Bonus wäre es schön zu wissen, wie viele Blöcke / Absätze es gibt. Also, basierend auf dem obigen Beispiel, wären das zwei Blöcke.
Ein kurzer Weg, um die Anzahl der nicht leeren Zeilen zu zählen, könnte sein:
%Vor% Wenn man bedenkt, dass die Leerzeilen nur das neue Zeilenzeichen enthalten, wäre es viel schneller, str.strip
nicht aufzurufen, was eine neue Zeichenkette erzeugt, sondern stattdessen mit str.isspace
prüft, ob die Zeile nur Leerzeichen enthält.
Demo:
%Vor% Sie können str.isspace
weiterhin mit itertools.groupby
verwenden, um die Anzahl zu zählen von zusammenhängenden Zeilen / Blöcken in der Datei:
Tags und Links python