Seite 1 von 1

.txt richtig einlesen auf Mac oder Windows?

Verfasst: Freitag 12. Januar 2018, 21:39
von kiesmo
Hallo,

beschaeftige mich im Moment mit Python.
Zurzeit versuche ich eine Normale .txt Datei einzulesen mit folgendem Inhalt:

AnzahlFragen
AnzahlRichtigbeantworteteFragen
Frage;AnzahlAntwort;Antwort;NumrischeFrage;Abweichung;Flag

Ich lese die Datei wie folgt ein:

Code: Alles auswählen

with open("/Users/Maccc/Desktop/Quiz/Questions.txt", encoding='utf-8') as f:
	content = f.readlines()
	print(content)
Als ausgäbe wird mir folgendes Angezeigt:

['{\\rtf1\\ansi\\ansicpg1252\\cocoartf1504\\cocoasubrtf830\n', '{\\fonttbl\\f0\\fswiss\\fcharset0 Helvetica;}\n', '{\\colortbl;\\red255\\green255\\blue255;}\n', '{\\*\\expandedcolortbl;;}\n', '\\paperw11900\\paperh16840\\margl1440\\margr1440\\vieww10800\\viewh8400\\viewkind0\n', '\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\pardirnatural\\partightenfactor0\n', '\n', '\\f0\\fs24 \\cf0 AnzahlFragen\\\n', 'AnzahlRichtigbeantworteteFragen\\\n', 'Frage;AnzahlAntwort;Antwort;NumrischeFrage;Abweichung;FrageBeantwortetFlag}']


Was wird da alles eingelesen?
Liegt es am mac?
Wie kann ich nur den richtigen Inhalt einlesen?

Lg

Re: .txt richtig einlesen auf Mac oder Windows?

Verfasst: Freitag 12. Januar 2018, 21:42
von __deets__
Das was du siehst ist die Repraesentation der Strings. Die enthaelt sogenannte escapes, zB \n fuer neue Zeile, \\ fuer einen Backslash.

Das ist also der korrekte Inhalt, hat auch nix mit dem Mac zu tun. Mit print(line) bekommst du das erwartete Ergebnis, oder wenn du das weiter verarbeitest, etc.

Re: .txt richtig einlesen auf Mac oder Windows?

Verfasst: Freitag 12. Januar 2018, 21:51
von kiesmo
Gibt es eine Möglichkeit den ganzen Kram auszublenden und nur das anzuzeigen was tatsächlich reingeschrieben wurde?
Wenn die Datei leer ist bzw. nichts drin steht, wird mit trotzdem etwas ausgegeben:

{\rtf1\ansi\ansicpg1252\cocoartf1504\cocoasubrtf830

Re: .txt richtig einlesen auf Mac oder Windows?

Verfasst: Freitag 12. Januar 2018, 22:04
von __deets__
Python liest nichts, was nicht da ist. Auch wenn etwas nicht darstellbar als Buchstaben ist, ist es da. Neue Zeilen zb

Woher kommt die Datei? Kannst du die mal mit pastebin hochladen?

Re: .txt richtig einlesen auf Mac oder Windows?

Verfasst: Freitag 12. Januar 2018, 22:08
von kiesmo
Die Datei habe ich selber erstellt. :/
Wie funktioniert das mit pastebin?

Re: .txt richtig einlesen auf Mac oder Windows?

Verfasst: Freitag 12. Januar 2018, 22:11
von kiesmo
Okay, hab das Problem gefunden. Wenn ich mit textEdit eine .txt erstelle, gibt es anscheinend noch ein Header. Weiss zwar nicht was es ist, wird in der .txt nicht angezeigt, aber trotzdem eingelesen.

Wenn man übers terminal mit touch xyzzy.txt eine neue .txt erstellt, dann ist alles sauber... :D

Re: .txt richtig einlesen auf Mac oder Windows?

Verfasst: Freitag 12. Januar 2018, 22:49
von kbr
@kiesmo: Zum erstellen von Programmcode oder reinen Textdateien nimmt man einen richtigen Editor und nicht ein Textverarbeitungsprogramm oder ähnliches Tool. Letztere speichern neben dem Text zusätzlich Metainformationen zur Formatierung.

Re: .txt richtig einlesen auf Mac oder Windows?

Verfasst: Freitag 12. Januar 2018, 23:42
von __deets__
Nach dem zweiten Blick ist klar (und nach kbrs Kommentar) - das ist 'rich text format'. Nicht purer Text. So als ob du ein HTML-Dokument oeffnest.