Zeilen einer Txt-Datei editeren bzw. löschen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
koukoun
User
Beiträge: 27
Registriert: Freitag 27. April 2007, 15:55

Hallo,
ich hab eine Txt-Datei. An bestimmten Stellen möchte ich die Zeilen mit neuen Strings ersetzen:

txt:
hali halo
wie geht?


soll werden

hali hali
wie geht es dir heute?


Hierbei muss keine neue Datei erstellt werden.

Kann jemand mir helfen?! Danke[/code]
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Definiere "bestimmte Stellen"! Zeilennummer? Bestimmte Wörter?
koukoun
User
Beiträge: 27
Registriert: Freitag 27. April 2007, 15:55

Es handelt sich um Bediengungen, ob sie erfühlt sind. Ich lese Zeileweise die Datei und da wo die bedingung True ist, kann ich die aktuelle Stelle mit tell() ermitteln. genau an dieser Stelle möchte ich die Zeile mit einer neuen Zeile ersetzen.

Hyperion hat geschrieben:Definiere "bestimmte Stellen"! Zeilennummer? Bestimmte Wörter?
audax
User
Beiträge: 830
Registriert: Mittwoch 19. Dezember 2007, 10:38

Code: Alles auswählen

from __futute__ import with_statement

output = []
with open('foobar.txt', 'r') as content:
    for line in content:
        if my_expression(line):
            line = change_it(line)
        output.append(line)
with open('foobar.txt.', 'w') as outfile:
    outfile.writelines(output)

Ps:
Ja, man könnte auch

Code: Alles auswählen

for line in fileinput.input("foobar.txt", inplace=True)
    if my_expression(line):
        line = change_it(line)
    print line
machen.
Antworten