Import Modul funktioniert nicht
Habe ich eine django - (aber ich denke, es ist noch revelant hier) ein Projekt, wo ich versuche, ein Skript hinzufügen, das ich vorher gemacht habe. Also legte ich es in ein Unterverzeichnis von meinem Projekt, und ich habe diese Struktur (ich weiß, es ist ein bisschen chaotisch im moment, aber es wird nicht bleiben, die genau so)
Vom views.py ich importieren möchten main.py (vor Allem die Funktion excelToXml) . Nach Recherchen im internet fand ich, dass der code, den ich kopiert views.py . Wenn ich undestood es richtig, es fügen Sie der variable $PATH das Verzeichnis übergeordnete first_page, und obwohl in jedem Unterverzeichnis
CURRENT = os.path.dirname(os.path.abspath(__file__))
PARENT = os.path.dirname(CURRENT)
sys.path.append(PARENT)
from ExcelToXML.main import excelToXml
Ich auch eine Datei erstellt __init.py__ in das Verzeichnis ExcelToXML, diese Datei ist leer.
Aber auch ich Tat alles, ich bekomme immer noch diese Fehlermeldung, wenn ich den django server
Datei "c:\Users\CRA\AppData\Local\Programs\Python\Python36-32\Lib\site-packages\django\bin\DevisVersOpen\DevisVersOpen\urls.py", line 18, in Modul
vom first_page import Ansichten
Datei
"c:\Users\CRA\AppData\Local\Programs\Python\Python36-32\Lib\site-packages\django\bin\DevisVersOpen\first_page\views.py",
Linie 13, die im Modulvom ExcelToXML.Haupt-import excelToXml
ModuleNotFoundError: Kein Modul mit dem Namen 'ExcelToXML'
Ich nicht finden, eine Lösung, die ich verstehen konnte auf internet, so dass ich weiß wirklich nicht, wie man dieses Problem lösen
InformationsquelleAutor Peni | 2017-08-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihre Verzeichnis-Struktur lassen mich denken, dass Sie sollten versuchen, zu importieren, wie diese :
weil die ExcelToXML ist unter der first_page-Modul, so angesehen wird, als ein Submodul des first_page.
InformationsquelleAutor Cédric Julien
Okay Hallo, die Lösung, die Sie gefunden haben, ist (glaube ich) ein Chaos, sollten Sie die offizielle Dokumentation über ihn https://docs.python.org/3.6/tutorial/modules.html#packages.
Kurz gesagt fügen Sie einfach
from .idea.main import excelToXml
.Wenn es nicht funktioniert, benennen Sie
.idea
Ordner zuidea
(ohne den Punkt), und fügen Sie in Ihreviews.py
diese Zeile :from idea.main import excelToXml
InformationsquelleAutor Zcode
Überprüfen Sie diese details auf, was ist init.py Datei Was ist __init__.py für?
Den init.py Datei die vorhanden sein sollten in jedem Verzeichnis und Unterverzeichnisse, deren Klassen sollten sichtbar gemacht werden für den import. In Ihrem Fall, die ich bin, zu Ahnen, dass das übergeordnete Verzeichnis nicht die init.py-Datei. Fügen Sie die Datei in das übergeordnete Verzeichnis, und importieren Sie Sie wie folgt
import first_page.ExcelToXML
InformationsquelleAutor Rohith