Ich bin ein Informatikstudent des ersten Jahres, der zurzeit an einem kleinen Projekt arbeitet, das ich zu Dropbox für Schule speichere.Wie importiert man während der Entwicklung eines Python-Pakets richtig?
Ich entschuldige mich im Voraus für eine potenziell triviale Frage. Aber ich habe wenig bis keine Erfahrung und nachdem ich alle Debugging-Techniken ausprobiert habe, bin ich wirklich festgefahren!
Es hat die folgenden Dateistruktur
school_project/
__init__.py #(empty)
main_functions/
__init__.py #(empty)
render.py
filter.py
helper_functions/
__init__.py #(empty)
string.py
utility.py
Derzeit muss ich in utility.py
in der Datei render.py
gegründet Funktionen nutzen. Mein erster Versuch, dieses Problem zu lösen, war import ..helper_functions.utility
in der Datei render.py
zu tun.
Leider wurde folgende Fehlermeldung angezeigt.
import ..helper_functions.utility
^
SyntaxError: invalid syntax
Zunächst einmal habe ich keine Ahnung, warum dieser relative Import nicht funktioniert.
Zweitens, sollte ich stattdessen nur einen absoluten Import verwenden? In der Form import school_project.helper_functions.utility
? Wenn ja, müsste ich dann das Verzeichnis hinzufügen, das school_project/
derzeit in PYTHONPATH ist? Wie würde ich das tun?
Würde ich nur PATH und meines Computers PYTHONPATH ändern entsprechend anpassen? Oder sind sie separate Einheiten und der Prozess ist ein bisschen mehr beteiligt? Ich habe mir andere Threads angeschaut, aber alle scheinen zu Laufzeit im Python-Skript selbst zu modifizieren, etwas, was ich als einen riesigen potenziellen Ursprung von Bugs in der Zukunft sehe.
Danke für die Antwort. Der Fehler ist nicht verschwunden. Gleicher Syntaxfehler, aber es zeigt jetzt auf die Periode '.' zwischen' helper_functions' und 'Dienstprogramm' – AlanSTACK
Scheint, dass wir Fortschritt bekommen :) –
Probieren Sie dies aus:' from ..helper_functions import-Dienstprogramm' –