replace

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
kleiner.epsilon
User
Beiträge: 25
Registriert: Sonntag 31. Oktober 2010, 14:31

Hallo,
ich kopiere eine Datei in einen anderen Ordner, dort soll in der Kopie ein Begriff gesucht werden (kommt nur einmal vor) und dann ersetzt werden.

Code: Alles auswählen

shutil.copyfile(scr, dest)
	d = open(dest, 'r+')
	text = d.read()
	rezufall = compile('seed=MYSEED', I)
	m = rezufall.search(text)
	n = m.group()
	d.write(n.replace('MYSEED', str(z)))
	d.close()
z ist eine Integer-Zahl und wurde oben definiert.
Es kommt keine Fehlermeldung, aber in der Kopie wurde nichts ersetzt.

Was habe ich falsch gemacht?
BlackJack

@kleiner.epsilon: Schau mal ans Ende der Datei.
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Wie wär's damit?

Code: Alles auswählen

with open(src, "r") as f, open(dst, "w") as g:
    g.write(re.sub("seed=MYSEED", "seed=%s" % z, f.read()))
Stefan
Antworten