webentwicklung-frage-antwort-db.com.de

Python kompilieren

Wie kann ich eine Python-Datei (* .py-Erweiterung) kompilieren und ausführen?

46
user161004

python yourfile.py

Sie müssen Python zuerst installiert haben. Die Datei wird automatisch in eine .pyc-Binärdatei übersetzt und dann für Sie ausgeführt. Es wird automatisch neu kompiliert, wenn sich Ihre Datei ändert.

http://www.python.org/download/

28
Paul McMillan

Python kompiliert seine Dateien vor der Ausführung zum Bytecode. Das bedeutet, dass auf dem Zielcomputer ein Python-Interpreter installiert sein muss.

Wenn Sie Python nicht auf dem Zielcomputer installieren möchten, verwenden Sie py2exe , py2app oder etwas Ähnliches.

15
Georg Schölly

Wenn Sie nur Quellen kompilieren möchten, ohne sie auszuführen, können Sie dies tun

compileall.py <directory>

dieser Befehl kompiliert rekursiv Python-Code in diesem Verzeichnis

Das Skript compileall befindet sich normalerweise in einem Verzeichnis wie

/usr/local/lib/python2.6

<prefix>/lib/python2.6 (oder ähnlich, abhängig von Präfixen, die eine Python-Konfiguration festlegen)

Wie Lulu vorschlägt, sollten Sie sicherstellen, dass die resultierenden .pyc- und .pyo-Dateien von den Benutzern ausgeführt werden, die Sie interessieren.

compileall kann auch als Modul verwendet werden

import compileall
compileall.compile_dir(path)
11
Evgeny

Python ist eine interpretierte Sprache, daher müssen Sie sie nicht kompilieren. nur um es auszuführen Die Standardversion von Python kompiliert dies wie "Java" in "Bytecode" und speichert es (in .pyc-Dateien) und führt es beim nächsten Mal aus. Das spart Zeit, wenn Sie nicht aktualisiert haben die Datei seit. Wenn Sie die Datei aktualisiert haben, wird sie automatisch neu kompiliert.

Sie können Python auch mit einem -O-Flag ausführen, das .pyo-Dateien anstelle von .pyc generiert. Ich bin mir nicht sicher, ob es einen großen Unterschied macht. Wenn Geschwindigkeit wichtig ist, verwenden Sie psyco.

Und ja, unter Unix (einschließlich Linux, BSD und Mac OS X oder in einer Unix-Shell unter Windows) können Sie eine Shebang-Zeile oben in der Datei verwenden, damit die Datei automatisch mit Python ausgeführt wird. Unter Windows müssen Sie python.exe .py-Dateien zuordnen. Stellen Sie anschließend sicher, dass die Umgebungsvariable PATHEXT die Erweiterung ".PY" enthält.

Für Windows möchten Sie jedoch eher ein GUI-Programm in Python schreiben (möglicherweise unter Verwendung von PyQT4 und ERIC4), das eine .pyw-Datei als Hauptskript enthält und mit .pyw in Verbindung mit Pythonw steht (das mit Python unter Windows kommt). Auf diese Weise können Sie Python-Skripts wie andere GUI-Programme unter Windows ausführen. Zum Veröffentlichen und Verteilen möchten Sie wahrscheinlich eine ausführbare Datei kompilieren, die etwa py2exe enthält, wie andere bereits erwähnt haben.

8
Lee B

Um zu Paul McMillans Antwort hinzuzufügen, wenn Sie Windows verwenden und Python installiert haben, sollten alle Dateien, die mit der Erweiterung ".py" enden, der python-Programmdatei zugeordnet werden, sodass Sie sie wie folgt ausführen können:

> myfile.py

In * nix können Sie die Datei mit #!/usr/bin/python beginnen und wie folgt ausführen:

$ ./myfile.py

Wenn in * nix-Systemen die ersten beiden Zeichen einer Datei #! sind, führt sie die Datei mit der angegebenen ausführbaren Datei aus, die ich hier als /usr/bin/python eingestellt habe.

5
geowa4

Wenn Sie eine Python-Quelldatei in einen doppelt klickbaren .exe unter Windows umwandeln möchten, können Sie py2exe verwenden, mit dessen Hilfe Sie ein Paket erstellen können, das einfach zu verteilen ist.

Auf den meisten Unix-ähnlichen Systemen können Sie mit Shebang dem Betriebssystem mitteilen, welcher Interpreter aufgerufen werden soll. Sie setzen einfach

#!/path/to/python 

in der ersten Zeile Ihrer Datei müssen Sie natürlich "/ path/to /" durch den Pfad ersetzen, den Sie auf Ihrem System haben. In den meisten Fällen wäre dies "/ usr/bin/python" oder "/ usr/local/bin/python". Auf Unix-Systemen können Sie den Pfad auch mit suchen 

"#!usr/bin/env python" 

oder den Befehl aufrufen

which python

um den Pfad zu finden ... Sie können Ihr Programm dann mit dem Befehl ausführen

./yourprogram.py

Wenn Sie wissen, dass Sie keine Berechtigung dazu haben, müssen Sie den Befehl verwenden

chmod a+x yourprogram.py
1
Lucas

Antwort für Windows

  1. zuerst müssen Sie Python installieren
  2. dann setze die Pfadvariable
  3. schreiben Sie danach Ihr Python-Programm und speichern Sie es
  4. ich denke, es gibt ein Python-Programm mit dem Namen " hello.py ".
  5. Öffnen Sie cmd.exe
  6. gehen Sie dann zu dem Pfad, in dem Sie Ihre Datei " hello.py " gespeichert haben.
  7. und dann python hello.py eingeben und enter drücken.

jetzt wird der Python-Code automatisch kompiliert und zeigt das Ergebnis. 

0
ashanrupasinghe