Seite 1 von 1
input mit Leerzeichen str.replace
Verfasst: Samstag 2. Februar 2019, 16:59
von michi-monster
Halli Allerseits. Ich entwickle ein Programm mit dem ich Häkelanleitungen übersetzen kann. Jetzt will ich einen input mit str.replace umwandeln.Leider ist das Einfügen von Text mit Leerzeichen anscheinend nicht möglich. Wie kann ich das lösen?
Code: Alles auswählen
print ("Bitte den Text eingeben")
str=input()
str_neu=str.replace("\n", "").replace("sc","fM").replace("dec","abn").replace("body","Körper").replace("arms","Arme").replace("Round","Runde")
print ("Die Übersetzung:", str_neu)
Re: input mit Leerzeichen str.replace
Verfasst: Samstag 2. Februar 2019, 17:06
von __deets__
Also fuer mich geht das problemlos:
Code: Alles auswählen
>>> "foo".replace("foo", "dies ist ein langer text mit leerzeichen")
'dies ist ein langer text mit leerzeichen'
Kannst du mal genauer beschreiben, was da passieren soll, aber nicht passiert, und wie es dann aussieht?
Re: input mit Leerzeichen str.replace
Verfasst: Samstag 2. Februar 2019, 17:16
von michi-monster
Sorry- Fehler . Ich meine Enter, nicht Leerzeichen. Es ist von mir gewünscht, dass ich einen Text kopiere wie zum Beispiel "With white yarn:
Round 1.
Round 2.
Round 3.
Round 4.
Round 5.
Round 11.
6 sc in double adjustable ring
inc*"
Wenn ich das einfüge wird nur die erste Zeile übersetzt.
Bitte den Text eingeben
With white yarn:
Round 1.
Round 2.
Round 3.
Round 4.
Round 5.
Round 11.
6 sc in double adjustable ring
inc*
(sc, inc)*
(2 sc, inc)*
– Round 10. sc*
(2 sc, dec)*
(6)
(12)
(18)
(24)
(24)
(18)
Die Übersetzung: mit white yarn:
>>>
Re: input mit Leerzeichen str.replace
Verfasst: Samstag 2. Februar 2019, 17:18
von __deets__
Ich werde aus deiner Beschreibung nicht so ganz schlau, aber schon das erste replace schmeisst doch alle newlines raus. Danach werden dann nur Uebersetzungen von Abkuerzungen zu Woertern ohne white-Space. vorgenommen. Also enthaelt das Ergebnis dann keine neuen Zeilen mehr

Re: input mit Leerzeichen str.replace
Verfasst: Samstag 2. Februar 2019, 17:23
von michi-monster
Ich verstehe nicht, warum nicht weiter übersetzt wird. So zum Beispiel .replace("Round","Runde")
Re: input mit Leerzeichen str.replace
Verfasst: Samstag 2. Februar 2019, 17:40
von ThomasL
str als Variablenname ist sehr unglücklich, da das eine Python Funktion ist.
Wenn du die input Funktion aufrufst, Text eingibst und Enter drückst, wird die Funktion beendet.
Ich verstehe dich so, dass du den Text zuvor in den Zwischenspeicher kopierst und dann in die Eingabe kopierst.
Wenn im Text ein Enter-Code "Carriage-Return" enthalten ist, wird alles danach nicht mehr durch die Input Funktion angenommen.