Getrennte Wörter aus Text zusammenschreiben

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
stale
User
Beiträge: 1
Registriert: Dienstag 19. Juni 2018, 11:48

Hallo ihr, ich bin totaler Anfänger was Python angeht und bräuchte eure Hilfe und zwar möchte ich ein Programm schreiben, dass Silbentrennung auflöst. Dazu ein kurzer Beispieltext:

Heute ist Mon-
tag. Die Sonne scheint.
Mein Winter-
garten ist schön.


Ich möchte gerne ein Programm schreiben, dass die getrennten Wörter zusammenschreibt und die Bindestriche „-“ mit „|“ ersetzt. Außerdem soll die Zeilennummer mit angegeben werden.
Die Ausgabe soll also so aussehen:

Heute ist Mon|tag.
Die Sonne scheint.
Mein Winter|garten
ist schön.


Dazu habe ich den Text einlesen lassen, die Bindestriche durch die senkrechten Striche ersetzten lassen und die auf den Bindestrich folgende Zeile gesplittet. Jetzt komm ich aber nicht weiter, das Wort der nächsten Zeile an das obige anzuhängen und den Rest in der nächsten Zeile ausgeben zu lassen.

Code: Alles auswählen

import re  
f=open ("...","rt",encoding="utf-8")

line = f.readlines()
f.close()

zähler=0

for y in line:                         
    if "-\n" in y:
        newy= y.replace("-","|")
        print(newy, zähler)
        
        nächstezeile=(line[zähler+1])
        gesplittet=nächstezeile.split(" ")
        print(gesplittet[0])
        
    zähler=zähler+1
Vielleicht könntet ihr mir helfen, einen Ansatz zu finden wie ich weiterarbeiten kann. Eventuell mit einer Liste?
Liebe Grüße
stale
Benutzeravatar
__blackjack__
User
Beiträge: 13004
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Teile das ganze *nicht* in Zeilen auf, dann musst Du am Ende keine Zeilen zusammenfügen.

Zudem ist auch der Code bisher fehlerhaft, denn ``y.replace("-","|")`` ersetzt *jedes* '-' durch ein '|', nicht nur das am Zeilenende.

Ausserdem stellte sich bei dem Problem schon mal diese Frage: viewtopic.php?p=326808#p326808 :-)
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
Antworten