Seite 1 von 1

passagen in einem textfile ersetzen gekoppelt an ein Entry

Verfasst: Freitag 17. Juni 2005, 12:36
von larsi
hallo leute,
ich bin neu hier und habe auch noch keine grosse erfahrung mit python.
den ganzen morgen versuche ich nun schon folgendes:

ich möchte in einem textfile.txt, das so aussieht:
***********************************************************
data_convert.conversion_type export_asc_arc_grid
data_convert.input_dtm_file D:\test_socet\data\au518.dth
data_convert.output_asc_file D:\test_socet\data\116.lat
data_convert.project_file D:\test_socet\data\au518.prj
data_convert.spacing_to_use 0
************************************************************

alle 'au518' ersetzen durch 'masch513'. letzteres möchte ich über einen Entry (z.B. raw_input) eingeben können. danach möchte ich das modifizierte textfile wieder saven.
mir gelingt es nicht einmal eine textpassage im textfile durch ein andere textpassage zu ersetzen!
Hilfe!

Code: Alles auswählen

def ersetzen(datei):
    re = compile('au518.dth', I)
    f = file(datei, 'w')
    text = f.write()
    re.sub('au518', 'masch672')
    f.close()

e = ersetzen('C:/python_ueben/replace/text1.txt')
raw_input('Beenden mit <ENTER>')
vielen dank für eure mühe trotz herrlichem badewetter!

Lars

EDIT by mawe: Code in Python-tags gesetzt

Verfasst: Freitag 17. Juni 2005, 13:13
von querdenker
mal so nebenbei: Setz den Code mal in python-tags, dann ist der Sourcecode für andere leichter lesbar!
Zu deinem eigenlichen Problem:
du kannst in einer Datei nicht gleichzeitig lesen und schreiben.

mfg, querdenker

Verfasst: Freitag 17. Juni 2005, 13:18
von Gast
Hi!
querdenker hat geschrieben: du kannst in einer Datei nicht gleichzeitig lesen und schreiben.
Doch, indem Du sie im Mode r+ öffnest ;)

Gruß, mawe

Verfasst: Freitag 17. Juni 2005, 13:20
von raist1314
jau... und mit seek() auf dem file Objekt kann man dann tolle Sachen machen... :)

Sebastian

Verfasst: Freitag 17. Juni 2005, 13:50
von querdenker
Anonymous aka mawe hat geschrieben:Hi!

...
Doch, indem Du sie im Mode r+ öffnest ;)

Gruß, mawe

ok, punkt für dich ;)

mfg, querdenker