Ich bin neu in der Programmiersprache Python. Ich habe mich gefragt, ob es möglich ist, ein in Python geschriebenes Programm zu kompilieren.Ist es möglich, ein in Python geschriebenes Programm zu kompilieren?
Antwort
denke ich Compiling Python Code ein guter Anfang wäre:
Python-Quellcode automatisch in Python-Bytecode ist von der CPython Dolmetscher zusammengestellt. Kompilierter Code ist normalerweise in PYC (oder PYO) -Dateien gespeichert, und wird regeneriert, wenn die Quelle aktualisiert oder wenn sonst erforderlich ist.
Um ein Programm zu Menschen verteilen, die bereits Python installiert ist, können Sie Schiff entweder die PY-Dateien oder die PYC Dateien. In neueren Versionen können Sie auch ein ZIP-Archiv erstellen, das PY- oder PYC-Dateien enthält, und ein kleines "Bootstrap-Skript" verwenden, um das ZIP Archiv zum Pfad hinzuzufügen.
zu „übersetzen“, ein Python-Programm in eine ausführbare Datei, eine Bündelungswerkzeug wie als Gordon McMillan des Installateurs (alternativer Download) (Cross-Plattform) verwenden, py2exe Thomas Heller (Windows), Anthony Tuininga der cx_Freeze (plattformübergreifend) oder Bob Ippolitos py2app (Mac). Diese Werkzeuge setzt Ihre Module und Dateien in irgendeine Art von Archivdatei, und erstellt eine ausführbare Datei, die automatisch Dinge setzt, so dass Module aus diesem Archiv importiert werden. Einige Tools können das Archiv in die ausführbare Datei selbst einbetten.
Python kompilieren im laufenden Betrieb, wenn Sie es ausführen.
Führen Sie eine .py Datei (Linux): python abc.py
Python eine interpretierte Sprache ist, so dass Sie Ihre Skripte nicht kompilieren müssen, um sie laufen zu lassen. Der einfachste Weg, um einen auszuführen, ist, zu seinem Ordner in einem Terminal zu navigieren und "python somefile.py" auszuführen. Dies hängt davon ab, ob Sie Python installiert haben von the python site.
Sie können Python-Anwendungen kompilieren, aber das ist in der Regel nicht etwas, was ein neuer Entwickler zunächst tun muss. Wenn Sie danach suchen, werfen Sie einen Blick auf py2exe. Dies nimmt Ihr Python-Skript und packt es als eine ausführbare Datei wie jedes Programm auf Ihrem Windows-basierten Computer. Sie können auch einzelne Dateien mit Python kompilieren, wie im Abschnitt "Kompilieren von Python-Modulen zu Bytecode" unter this site.
beschrieben. Sie müssen es nicht kompilieren. Wenn Sie es zuerst verwenden (importieren), wird es vom CPython-Interpreter kompiliert. Aber wenn Sie wirklich kompilieren wollen, gibt es mehrere Möglichkeiten.
zu kompilieren
oder 2 Kompilierung nur eine bestimmte * .py Datei exe, die Sie gerade
import py_compile
py_compile.compile("yourpythoncode.py")
py2exe ist besonders gut dafür. Ich habe es reichlich benutzt und bin sehr glücklich damit. Es enthält sogar alle Ihre Importanweisungen und mehrere Module/Codedateien – inspectorG4dget
Python kann als dynamische Sprache nicht statisch in den Maschinencode "kompiliert" werden, wie C oder COBOL. Sie benötigen immer einen Interpreter, um den Code auszuführen, der per Definition in der Sprache eine dynamische Operation ist.
Sie können Quellcode in Bytecode "übersetzen", was nur ein Zwischenprozess ist, den der Interpreter ausführt, um die Last des Codes zu beschleunigen. Er konvertiert Textdateien mit Kommentaren, Leerzeichen, Wörtern wie 'if'. 'def', 'in', usw. in binärem Code, aber die dahinterliegenden Operationen sind in Python genau dieselben, nicht in Maschinencode oder irgendeiner anderen Sprache. Dies ist, was es in .pyc-Dateien gespeichert und es ist auch zwischen Architekturen portierbar.
Wahrscheinlich, was Sie brauchen, ist es nicht "kompilieren" den Code (was nicht möglich ist), sondern einen Interpreter (in der richtigen Architektur) mit dem Code "einzubetten", um den Code ohne eine externe Installation des Interpreters zu ermöglichen. Um dies zu tun, können Sie all diese Tools wie py2exe oder cx_Freeze verwenden.
Vielleicht bin ich bin ein wenig pedantisch auf diesem :-P
Wenn Sie wirklich wollen, können Sie immer mit Cython kompilieren. Dies erzeugt C-Code, den Sie dann mit jedem C-Compiler wie GCC kompilieren können.
Vermeiden von Redundanz Ich wiederhole meine Antwort hier nicht.
Bitte beachten Sie meine Antwort here.
- 1. Ist es möglich, ein selbstzerstörerisches Programm in C zu schreiben?
- 2. Ist es möglich, C-Programm über Python-Skript zu erstellen?
- 3. Ist es möglich, ein Latex-Dokument über node.js zu kompilieren?
- 4. Ist es möglich, ein C# -Projekt ohne MSBuild zu kompilieren?
- 5. Ist es möglich, absichtlich ein Programm Thrash zu machen?
- 6. Ist es möglich, ein in Haskell geschriebenes Spiel im Browser auszuführen? (Durch GHCJS vielleicht?)
- 7. Ist es möglich, ein Python-Wörterbuch in AMQP zu legen?
- 8. Ist es möglich, ein Modul in Python iterierbar zu machen?
- 9. Ist es möglich, zwischen BLAS-Bibliotheken zu wechseln, ohne das Programm neu zu kompilieren?
- 10. Ist es möglich, ffmpeg in Visual Studio 2010 zu kompilieren?
- 11. Ist es möglich, flex 3 Diagramme in intellij zu kompilieren?
- 12. Ist es möglich, Assemblercode in MSVC++ zu kompilieren?
- 13. Ist es möglich, vor dem Kompilieren von Xcode ein Python-Skript auszuführen?
- 14. Python: Ist es möglich, ein tkinter-Programm über alle Fenster zu machen?
- 15. Ist es möglich, Silverlight Controls Projekt mit Nant zu kompilieren?
- 16. Ist es möglich, ein Datum mit sqlite3 zu formatieren?
- 17. Ist es möglich, Stackdriver-Überwachungsagent von der Quelle zu kompilieren
- 18. Ist es möglich, ein Python-Programm in der Shell über die Windows-Eingabeaufforderung auszuführen?
- 19. Ist es möglich, Programm während der Ausführung zu debuggen?
- 20. Ist es möglich, ein Programm mit Java-Bytecode-Anweisungen direkt zu schreiben?
- 21. Ist es möglich, ein Icon zu verschieben?
- 22. Ist es möglich, ein Pseudozufall zu teilen
- 23. Ist es möglich, ein Einlaufen zu erkennen?
- 24. ein Python-Grund Python-Programm zu schreiben
- 25. Ist es möglich, Python-Code-Vervollständigung in TextMate zu implementieren?
- 26. Wie ist es möglich, in Python +5 zu bewerten?
- 27. ist es möglich, Python String-Interpolation in Ocaml zu reproduzieren?
- 28. Ist es möglich, Python-Funktionsargumente in Sphinx zu verstecken?
- 29. Kompilieren einer Java-Datei ... mit einem Java-Programm
- 30. Ist es möglich, ein Programm in C zu schreiben, das nichts tut - nicht einmal Speicher belegt?
Sie nicht tatsächlich ein Python-Skript "kompilieren". Sie führen es mit dem Python-Interpreter aus. – ghostdog74
@ ghostdog74 - Ja, aber Python _kann_ kompiliert werden. –
@andrew, ja ich weiß Python kann kompiliert werden. Dieser Typ ist neu in Python, also nehme ich an, dass er Compilieren meinte, was man zum Beispiel mit C macht, nicht fortgeschrittenere Sachen wie py2exe oder pyc files ... – ghostdog74