ich ein Projekt mit der folgenden Architektur habe:kann nicht Python-Datei über Python-Pfad für den Zugriff auf
source/
├── data
│ ├── job.py
│ ├── __init__.py
│ └── __pycache__
│ └── article_library.cpython-35.pyc
├── graph
├── __init__.py
├── main.py
└── settings
├── __init__.py
├── __pycache__
│ ├── __init__.cpython-35.pyc
│ └── settings.cpython-35.pyc
└── settings.py
Und das ist mein Python-Pfad:
['', '/usr/lib/python35.zip', '/usr/lib/python3.5', '/usr/lib/python3.5/plat-x86_64-linux-gnu', '/usr/lib/python3.5/lib-dynload', '/home/user/Documents/thesis/venv/lib/python3.5/site-packages']
Quelle/Einstellungen/Einstellungen. py
MY_TOKEN = "atokentodostuff"
Quelle/__ init__.py
from settings import settings
Quelle/main.py
from settings import settings
print(settings.MY_TOKEN)
Es Ausgang mir, dass:
atokentodostuff
Quelle/data/job.py
from ..settings import settings
print(settings.MY_TOKEN)
Aber wenn ich interpretieren diesen Code (was auch immer meine Position im Projekt) ich folgende Fehlermeldung bekam:
Traceback (most recent call last):
File "job.py", line 3, in <module>
from ..settings import settings
SystemError: Parent module '' not loaded, cannot perform relative import
Wie kann ich die Variable in meinem settings.py
in die Datei job.py
zugreifen. Und gibt es eine Möglichkeit, es von überall her startfähig zu machen?
Google "warum ich pycache tun?" für eine Erklärung. – tburrows13
Jetzt weiß ich, was der Zweck von __pycache__ ist, aber das hilft mir nicht, das Pfadproblem zu lösen – mel
Entschuldigung, ich meinte das nur als Nebenkommentar, damit Sie es verstehen. Es sollte die Frage nicht beantworten. – tburrows13