Textdatei zu string konvertieren und Enter zu \n

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
2fersen
User
Beiträge: 15
Registriert: Montag 19. November 2018, 14:24

Hallo Leute,
ich benötige ein "Konverter" welcher den Text einer Textdatei zu einer Variable konventiert, wobei Enter zu \n umgewandelt werden soll und Hashtags nicht als Kommentar oder ähnliches erkannt werden sollten.

Beispiel Textdatei:

Code: Alles auswählen

Hello Guys!
a
b
c
#python
Konvertiert soll dies in:

Code: Alles auswählen

Hello Guys!\na\nb\nc#python
Freue mich auf eure Antworten!
2fersen
__deets__
User
Beiträge: 14523
Registriert: Mittwoch 14. Oktober 2015, 14:29

Wir freuen uns darauf zu sehen, welchen Code du schon geschrieben hast, und wo dir das Problem unklar ist, und du konkret Hilfe brauchst. Denn Code-gegen-Spezifikation-und-warme-Worte gibt es hier recht selten.
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

2fersen hat geschrieben: Montag 19. November 2018, 14:30 ich benötige ein "Konverter" welcher den Text einer Textdatei zu einer Variable konventiert, wobei Enter zu \n umgewandelt werden soll und Hashtags nicht als Kommentar oder ähnliches erkannt werden sollten.
Das ist kein "Konvertieren", das ist ein einfaches Einlesen der Datei.
Benutzeravatar
snafu
User
Beiträge: 6738
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

2fersen hat geschrieben: Montag 19. November 2018, 14:30 Konvertiert soll dies in:

Code: Alles auswählen

Hello Guys!\na\nb\nc#python
Das ist doch bereits das Standardverhalten. Du machst also einfach:

Code: Alles auswählen

with open('filename.txt') as text_file:
    text = text_file.read()
print(repr(text))
__deets__
User
Beiträge: 14523
Registriert: Mittwoch 14. Oktober 2015, 14:29

@Snafu: seit wann ueberliest read denn Kommentarzeilen?
medix
User
Beiträge: 7
Registriert: Dienstag 13. November 2018, 20:57

__deets__ hat geschrieben: Montag 19. November 2018, 17:36 @Snafu: seit wann ueberliest read denn Kommentarzeilen?
Soll es ja nicht überlesen laut Hilfesuchendem
__deets__
User
Beiträge: 14523
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ah, das habe ich missverstanden.
__deets__
User
Beiträge: 14523
Registriert: Mittwoch 14. Oktober 2015, 14:29

Wobei sein Beispiel ja auch keine newline zwischen c und #python zeigt. Aber das ist wahrscheinlich eher ein Versehen.
2fersen
User
Beiträge: 15
Registriert: Montag 19. November 2018, 14:24

snafu hat geschrieben: Montag 19. November 2018, 17:32
2fersen hat geschrieben: Montag 19. November 2018, 14:30 Konvertiert soll dies in:

Code: Alles auswählen

Hello Guys!\na\nb\nc#python
Das ist doch bereits das Standardverhalten. Du machst also einfach:

Code: Alles auswählen

with open('filename.txt') as text_file:
    text = text_file.read()
print(repr(text))
Oh wusste ich nicht das dies immer so ist. Vielen Dank!
Benutzeravatar
__blackjack__
User
Beiträge: 13073
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Wobei das ja nicht ganz den Anforderungen entspricht, denn im gegebenen Beispiel sind keine Anführungszeichen. Aus dem Beispiel ist auch nicht ersichtlich was beispielsweise bei Anführungszeichen oder Backslashes im Text passieren soll. Vielleicht ist `repr()` fast das richtige, vielleicht aber auch nicht. Oh, und vielleicht ist bei Python 3 sogar `ascii()` statt `repr()` gefragt. Oder bei Python 2 weniger als `repr()` mit Zeichen ausserhalb von ASCII macht. :-)

Last but not least würde mich natürlich auch noch interessieren welches Problem hier eigentlich gelöst werden soll, denn solche Repräsentationsfragen von Grunddatenstrukturen sind ja nicht selten auch Missverständnisse beim Fragenden oder XY-Probleme.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Antworten