in Datei Schreiben

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.
lilhill2002
User
Beiträge: 17
Registriert: Donnerstag 9. November 2006, 18:33
Kontaktdaten:

in Datei Schreiben

Beitragvon lilhill2002 » Samstag 12. Mai 2007, 00:09

hi @ll habe folgende Problem
wenn ich die Zeilen in mein Datei schreibe schreibt er die zeilen alle Hintereinander ich will die aber unter einander haben könnt ihr mir helfen? bitte?

Code: Alles auswählen

# -*- coding: utf-8 -*-

import re


fileh = file('test.txt', 'r')


zerteilung = '(.*) text=(.*)'

# zB. "Bertolt Brecht" text="Wer kämpft, kann verlieren. Wer nicht kämpft, hat schon verloren."

prog = re.compile(zerteilung)
schreiben = file('text.txt', 'w')



while True:
        line = fileh.readline()
        if not line: break
       
        try:
           result = prog.match(line)
      zitat = result.group(2)
           print zitat
      schreiben.write(zitat,)


   except :
          print 'Fehler'


schreiben.close()
fileh.close()
kbrust
User
Beiträge: 11
Registriert: Montag 9. Oktober 2006, 11:53
Kontaktdaten:

Beitragvon kbrust » Samstag 12. Mai 2007, 00:47

Einfach ein Newline-Zeichen mit einfügen, z.B.

Code: Alles auswählen

schreiben.write(zitat+"\n")
lilhill2002
User
Beiträge: 17
Registriert: Donnerstag 9. November 2006, 18:33
Kontaktdaten:

Beitragvon lilhill2002 » Samstag 12. Mai 2007, 09:30

vielen Dank das hat supper geklappt.

hatte das auch gestern schon versucht aber anstatt "+" hatte ich ","
Danke dir :P
BlackJack

Beitragvon BlackJack » Samstag 12. Mai 2007, 10:20

Dateiobjekte sind "iterable", dass heisst man kann sie in einer Schleife benutzen:

Code: Alles auswählen

for line in fileh:
    result = prog.match(line)
    if result:
        zitat = result.group(2)
        print zitat
        schreiben.write(zitat + '\n')


Und man sollte kein ``except`` ohne eine konkrete Ausnahme benutzen, sonst "verschluckt" die Ausnahmebehandlung einfach alles und das kann bei Fehlern dazu führen, dass man sie nur sehr schwer findet, weil die nötigen Informationen unterdrückt werden.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder