2017-03-26 3 views
0

Ich habe eine Verzeichnisstruktur wie folgt aus:Python: access "Cousin" .txt-Datei

project 
    gamelib 
    game.py 
    levels 
    level1.txt 

I game.py brauchen level1.txt zuzugreifen.

with open(path, "r") as f: 
    ... 

Wie greife ich auf den Pfad von level1.txt?

+0

Das hängt davon ab, was Sie * working * Verzeichnis in diesem Moment ist ... –

+0

@ WillemVanOnsem: hängt es nicht wirklich auf den Speicherort von 'game.py', die in keiner bestimmten Weise auf die Arbeitsverzeichnis? –

+0

@ScottHunter: afaik, wenn Sie es mit 'python game.py' aufrufen und der Pfad relativ ist, funktioniert es von diesem Pfad. –

Antwort

0

entweder geben Sie den vollständigen Pfad

with open("/usr/yourUser/../project/levels/level1.txt", "r") as f: 

oder einen relativen Pfad (dies der Auffassung, dass das Skript game.py bei befindet sich ./project Ebene)

with open("./levels/level1.txt", "r") as f: 

In Ihrem Beispiel müssen Sie zurück reisen:

with open("../levels/level1.txt", "r") as f: 
+0

könnten Sie bitte Code für die relative Methode verwenden? – Jonathan

+0

Ich aktualisierte meine Antwort. Sie müssen nur die Datei suchen, als ob Sie sich an der Stelle Ihres Skripts befänden und einen 'ls'-Befehl ausführen, um die gewünschte Datei aufzulisten. –

Verwandte Themen