2016-12-16 3 views
1

ich habe:Warum wird die Datei nicht gefunden, obwohl der Pfad in PYTHONPATH angegeben ist?

/home/stefan/workspace/git/master-thesis/data 

Satz in der PYTHONPATH und einige XML-Dateien, die in residieren:

/home/stefan/workspace/git/master-thesis/data/semeval/*.xml 

Allerdings, wenn ich versuche, diese XML-Dateien zu öffnen, erhalte ich:

FileNotFoundError: [Errno 2] No such file or directory: 'ABSA16_Restaurants_Train_SB1_v2.xml' 

Funktioniert das nur für Module?

+2

In Pythonpath wird nach Python-Modulen/-Paketen gesucht, nicht nach allgemeinen Daten. – syntonym

+0

Es wird nur für den Import von Modulen verwendet. Um den Pfad zu den Datendateien nicht hart zu codieren, benötigen Sie eine Konfigurations- oder Konfigurationsdatei für Ihre Anwendung. Eine andere Möglichkeit besteht darin, den Pfad des aktuell ausgeführten Skripts als Stammverzeichnis für den relativen Datenpfad zu verwenden. – martineau

+0

@martineau Danke! Ich denke, ich werde mit der relativen Pfadlösung gehen! – displayname

Antwort

1

Ja, Module auf diesem Weg gesucht werden, finden Sie in der documentation on PYTHONPATH:

den Pfad Dateien für Modul Standardsuche erweitern. Das Format entspricht dem PATH der Shell: ein oder mehrere Verzeichnispfadnamen, getrennt durch os.pathsep (z. B. Doppelpunkte unter Unix oder Semikolons unter Windows). Nicht vorhandene Verzeichnisse werden automatisch ignoriert.

Sie müssen den vollständigen Pfad zu open angeben, um ihn zu finden (vorausgesetzt, Sie ändern das aktuelle Verzeichnis nicht).

+0

Oh, das ist bedauerlich. Ich dachte wirklich, dass dies einfach alle Verzeichnisse einschließen würde. Danke für die Antwort! – displayname

+1

Gern geschehen @displayname –

Verwandte Themen