Seite 1 von 1

Auf Textdatei zugreifen

Verfasst: Dienstag 27. Februar 2018, 21:26
von MichaelR.
Hallo allerseits,

ich möchte gerne auf eine Textdatei zugreifen, bin mir aber unsicher, wie ich das umsetzte. Hier mein aktueller Versuch;

Code: Alles auswählen

with open("documents/Python/RC_2006-03/{}/RC_{}".format(timeframe.split('-')[0], timeframe), buffer=1000) as f:
		for row in f:
"documents/Python/RC_2006-03" ist der Pfad; "RC_2006-03" das Dokument.

Re: Auf Textdatei zugreifen

Verfasst: Dienstag 27. Februar 2018, 21:51
von sls
Hi,

wofür die For-Loop ? Was ist überhaupt Sinn der Übung? Wenn du die Textdatei öffnen möchtest, warum nicht einfach so:

Code: Alles auswählen

with open("documents/Python/RC_2006-03", 'r') as file:
    print(file.read())
Mfg,

sls

Re: Auf Textdatei zugreifen

Verfasst: Donnerstag 1. März 2018, 15:17
von /me
sls hat geschrieben:

Code: Alles auswählen

with open("documents/Python/RC_2006-03", 'r') as file:
    print(file.read())
Wenn du zeilenweise arbeiten willst, dann ist das allerdings nicht geeignet.

Re: Auf Textdatei zugreifen

Verfasst: Donnerstag 1. März 2018, 18:46
von sls
Ich denke, dann müsste der TE readline() verwenden. Bei read() bräuchte er ja wieder eine For-Loop.

Re: Auf Textdatei zugreifen

Verfasst: Freitag 2. März 2018, 11:47
von /me
Das Entscheidende ist: die Frage ist unklar.

Der in der Frage gezeigte Code mit dem "for row in f:" ist absolut korrekt und Standard. Das einzige was etwas merkwürdig aussieht ist die Erstellung des Dateinamens. Was aber ist die konkrete Frage?

Re: Auf Textdatei zugreifen

Verfasst: Freitag 2. März 2018, 12:25
von Kebap
MichaelR. hat geschrieben:

Code: Alles auswählen

open("documents/Python/RC_2006-03/{}/RC_{}"
"documents/Python/RC_2006-03" ist der Pfad; "RC_2006-03" das Dokument.
Dein Code baut aber nicht den Pfad
documents/Python/RC_2006-03/RC_2006-03
sondern etwas in der Art wie
documents/Python/RC_2006-03/irgendwas/RC_irgendwas

Ich würde die Erstellung des "RC_2006-03" aus timestamp in eine eigene Zeile verschieben, in eine eigene Variable packen, dann kannst du das erstmal testen. Vielleicht auch die Erstellung des kompletten Pfades. Damit der eigentliche open() Befehl einfach lesbar bleibt und Fehler bei einem der beiden Vorschritte leichter erkennbar sind.