Ich habe Pyinstaller verwendet, um eine einzige .exe für Windows mit einer einzigen .py-Datei zu erstellen und es hat gut funktioniert. jetzt bin ich etwas komplexer geworden und habe mehrere .py-dateien erstellt, die in ordnern unter meiner main.py gespeichert sind. Ich habe durch die pyinstaller Führer lesen, noch etwas scheint nicht von mir zu arbeiten ..python pyinstaller Erstelle Datei Import Verzeichnis
meine Ordnerstruktur in Fenstern wird wie folgt, ich bin nur ein einfaches Beispiel zur Veranschaulichung mit:
app_root\main.py
app_root\__init__.py
\library\__init__.py
\library\app_ext1.py
\library\app_ext2.py
\library\test\__init__.py
\library\test\app3.py
in main.py ich bin den Import Code aus
from library.app_ext1 import get_info
from library.app_ext2 import get_data
from library.test.app3 import get_test
so pyinstaller meiner main.py meine .spec Datei ausführen i. in der .spec-Datei habe ich
hiddenimports=['library']
pyinstaller keine Fehler beendet und meine einzigen EXE erstellt, aber wenn ich meine einzigen EXE ich folgende Fehlermeldung erhalten, laufen
C:\Users\user1\Desktop\1_file\dist>main.exe
Traceback (most recent call last):
File "app_root\main.py", line 2, in <module>
ImportError: No module named 'library'
Failed to execute script main
ich einen Test geschrieben Skript mit nur einer einzigen Py-Datei, und es wurde mit openpyxl einige einfache Arbeit zu tun (eine python-Bibliothek Excel) so in meinem Test-Py-Datei hatte ich „import openpyxl“, so in meinem spec-Datei i
verwendethiddenimports=['openpyxl']
das funktioniert gut, aber openpyx ist python lib, die mit pip installiert wurde, ich denke, ich verstehe nicht vollständig, wie ich meine eigenen Module/Skripte importieren, die ich erstellt und in einer Ordnerstruktur unterhalb meiner Haupt-.py-Skriptdatei gespeichert habe Verweise zwischen meinen .py-Skriptdateien wie in meinem obigen Beispiel.
Wie kann ich Pyinstaller erkennen meine .py-Skripte, die ich importiere?
Ihnen fehlen die '__init __. Py'-Dateien in Ihren Paketen (Ordnern). –
nein, sie sind da, sorry, ich habe sie nicht in das Beispiel gebracht. so mein Skript und Skripte alle .py-Dateien, die durch Importieren miteinander verknüpft sind, alles läuft gut in Python und pycharm Debuggen, alles funktioniert. also ich bin mir nicht sicher, warum Pyinstaller nicht funktioniert –
Sie sollten Ihren Eintrag oben aktualisieren. –