Seite 1 von 1

Python Datei Öffnen

Verfasst: Freitag 9. März 2012, 10:14
von Leetplex
Wie öffne ich mit Python eine Datei die in einem anderen Ordner liegt, wobei der Ordner im Ordner von der .py Datei liegt also so:

Python.py, Files(Ordner) -> Text(Ordner) -> Textdatei
Apropro was für eine Datei Endung haben Textdateien auf Xubuntu?

Re: Python Datei Öffnen

Verfasst: Freitag 9. März 2012, 10:21
von webspider
Klingt als wäre der fragliche relative Pfad zur Datei "Files/Text/data.txt". Von daher:

Code: Alles auswählen

with open("Files/Text/data.txt", "r") as f:
    # do something with the filehandle f
Für gewöhnlich nimmt man txt als Dateiendung, allerdings ist das keine Pflicht. Insbesondere unter unixoiden Betriebssystemen. Dort können die Dateien auch einfach keine Endung aufweisen. Von daher überprüft man den Dateityp gerne mit Werkzeugen wie file. Es könnte ja ebenso gut kein purer Text sein, sondern ein Dokument, das von Programmen wie LibreOffice erstellt wurde.

Achja, solltest du den Pfad zur Laufzeit zusammensetzen, dann nutze os.path.join():

Code: Alles auswählen

import os
file_path = os.path.join("Files/Text", "data.txt")

Re: Python Datei Öffnen

Verfasst: Freitag 9. März 2012, 12:50
von cofi
webspider hat geschrieben:Achja, solltest du den Pfad zur Laufzeit zusammensetzen, dann nutze os.path.join():

Code: Alles auswählen

import os
file_path = os.path.join("Files/Text", "data.txt")
Du meinst wohl

Code: Alles auswählen

import os
file_path = os.path.join("Files", "Text", "data.txt")
;)

Re: Python Datei Öffnen

Verfasst: Freitag 9. März 2012, 16:42
von webspider
Wo du Recht hast, hast du Recht :)

Re: Python Datei Öffnen

Verfasst: Montag 12. März 2012, 02:26
von Leonidas
webspider hat geschrieben:Von daher überprüft man den Dateityp gerne mit Werkzeugen wie file. Es könnte ja ebenso gut kein purer Text sein, sondern ein Dokument, das von Programmen wie LibreOffice erstellt wurde.
Der vollständigkeit halber: Open Document Format hat immer eine Endung, bei Text wär das ``.odt``. Und ``file`` ist nicht hundertprozentig sicher, lässt sich etwa von exotischen Encodings manchmal verwirren und denkt dann die Shift-JIS oder Big5 oder KOI8R-Textdatei wär dann binär.