Warum PYC in EXE konvertieren?
Der Hauptgrund für die Erstellung einer .exe ist die Verteilung: Eine paketierte ausführbare Datei läuft unter Windows ohne installiertes Python, was die Einrichtungsvoraussetzung für Endbenutzer oder Rechner, die Sie nicht kontrollieren, aufhebt. Eine .pyc ist Bytecode, der zur Laufzeit vom Python-Interpreter abhängt und nicht als eigenständige ausführbare Datei ausgeführt werden kann.
Wie man PYC in EXE konvertiert
PyInstaller FREE
Installieren Sie es mit pip install pyinstaller, führen Sie pyinstaller --onefile your_script.py aus und finden Sie die resultierende .exe im Ordner dist/. Verwenden Sie --noconsole für GUI-Apps und --icon=app.ico, um ein benutzerdefiniertes Symbol festzulegen.
cx_Freeze FREE
Installieren Sie es mit pip install cx_Freeze, erstellen Sie eine setup.py mit Ihrem Skript als Executable und führen Sie python setup.py build aus; die Ausgabe erscheint in einem build/-Ordner, der als Ganzes verteilt werden muss.
Über diese Formate
Eine .pyc-Datei ist kompilierter Python-Bytecode, den CPython automatisch zwischenspeichert, um den Start zu beschleunigen. Normalerweise müssen Sie sie nicht öffnen oder anfassen. Zum…
.PYC-Details öffnen →Eine EXE-Datei ist ein ausführbares Windows-Programm. Unter Windows startet man sie per Doppelklick. Auf dem Mac oder unter Linux kann man EXE-Dateien mit CrossOver oder Wine ausführen -…
.EXE-Details öffnen →Qualität & worauf zu achten ist
- Sie benötigen die
.py-Quelldateien, nicht nur die.pyc; wenn Sie nur eine.pychaben, dekompilieren Sie diese zuerst, wobei zu beachten ist, dass die Dekompilierung für Python 3.9 und neuer unvollständig sein kann. - Die erzeugte
.exeist plattformspezifisch - das Erstellen unter Windows erzeugt eine Windows-Datei, und Sie können nicht für ein anderes Betriebssystem cross-kompilieren. - Testen Sie die
.exeauf einem sauberen Rechner ohne installiertes Python, um zu bestätigen, dass alle Importe und Abhängigkeiten korrekt erfasst wurden.
Häufig gestellte Fragen
Was ist der Unterschied zwischen PyInstaller und cx_Freeze?
--onefile-Modus, der eine einzelne, in sich geschlossene .exe erzeugt; cx_Freeze erzeugt immer einen Ordner mit Dateien, die zusammenbleiben müssen.Kann ich eine .exe direkt aus einer .pyc-Datei erstellen?
.py-Quelldateien; wenn Sie nur eine .pyc haben, dekompilieren Sie diese zuerst zurück in .py.