1121 Stimmen

Wie kann ich ein Python-Skript eigenständig ausführbar zu machen, ohne JEDE Abhängigkeit laufen?

Ich entwickle eine Python-Anwendung und möchte meine Kunden nicht zwingen, Python und Module zu installieren.

Also, gibt es eine Möglichkeit, ein Python-Skript zu kompilieren, um eine eigenständige ausführbare Datei sein?

14voto

yantaq Punkte 3748

Ich empfehle auch PyInstaller für eine bessere Abwärtskompatibilität, wie z.B. Python 2.3 - 2.7.

Für py2exe müssen Sie Python 2.6 haben.

11voto

jdehesa Punkte 55291

Da es in der aktuellen Liste der Antworten zu fehlen scheint, denke ich, dass es erwähnenswert ist, dass die Standardbibliothek eine zipapp Modul, das zu diesem Zweck verwendet werden kann. Seine grundlegende Verwendung ist die Komprimierung einer Reihe von Python-Dateien in eine Zip-Datei mit der Erweiterung .pyz als direkt ausgeführt werden kann als python myapp.pyz aber Sie können auch ein in sich geschlossenes Paket aus einer requirements.txt Datei:

$ python -m pip install -r requirements.txt --target myapp
$ python -m zipapp -p "interpreter" myapp

Wo interpreter kann etwas sein wie /usr/bin/env python (siehe Angabe des Interpreters ).

In der Regel werden die erzeugten .pyz / .pyzw Datei sollte ausführbar sein, unter Unix, weil sie als solche markiert wird, und unter Windows, weil die Python-Installation diese Erweiterungen normalerweise registriert. Es ist jedoch relativ einfach, die eine ausführbare Windows-Datei erstellen die funktionieren sollte, solange der Nutzer über python3.dll auf dem Weg.

Wenn Sie nicht wollen, dass der Endbenutzer Python installieren muss, können Sie die Anwendung zusammen mit das einbindbare Python-Paket .

10voto

ravi.chunduru Punkte 196

Für Python 3.2-Skripte ist die einzige Möglichkeit cx_Freeze . Bauen Sie es aus den Quellen, sonst wird es nicht funktionieren.

Für Python 2.x empfehle ich PyInstaller, da es ein Python-Programm in eine einzige ausführbare Datei packen kann, im Gegensatz zu cx_Freeze, das auch Bibliotheken ausgibt.

7voto

Joe Punkte 1212

Die Liste der Verteilungsdienstprogramme finden Sie unter Vertrieb Dienstprogramme .

Yo uso bbfreeze und es hat sehr gut funktioniert (allerdings fehlt noch die Unterstützung für Python 3).

7voto

Belial Punkte 811

Py2exe erstellt die gewünschte EXE-Datei, aber Sie müssen die gleiche Version von MSVCR90.dll auf dem Rechner haben, auf dem Sie Ihre neue EXE-Datei verwenden werden.

Ver Tutorial für weitere Informationen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X