Verwendung von Python zum entfernen von Zeilen in Dateien, die beginnen mit einer Raute?

Wie es scheint, ein geradlinig Frage zu sein, aber ich kann nicht scheinen, Sie zu lokalisieren mein problem. Ich bin versucht, löschen Sie alle Zeilen in einer Datei, die beginnen mit einer Raute (#) außer der ersten Zeile. Hier ist die Schleife, mit der ich arbeite:

for i, line in enumerate(input_file):
    if i > 1:
        if not line.startswith('#'):
            output.write(line)

Der obige code scheint nicht zu funktionieren. Hat jemand erkannt, was mein problem ist? Danke!

Können Sie uns sagen, was es tut, das nicht richtig?
Ich gehe davon aus, Sie möchten, dass Linien, die andere als whitespace beginnen mit einer Raute. Siehe meine Antwort.
Bin ich die einzige, die nicht wusste, was eine Raute war?
+1 für die Erklärung, was eine Raute ist. 🙂
Eine weitere Möglichkeit, sed benutzen: sed '/^#.*/d' old.txt > new.txt

InformationsquelleAutor drbunsen | 2011-08-08

Schreibe einen Kommentar