Ich habe angefangen, Python zu lernen und bin auch ein neuer Benutzer von Ubuntu. Ich muss wissen, wie die .py
Dateien kompiliert werden. Ich habe es mit dem Befehl versucht
python "hello.py"
Was sind die anderen Möglichkeiten, um Python zu kompilieren?
-O
Flag hinzufügenpython -O -m py_compile …
, mit dem "grundlegende Optimierungen aktiviert werden". Es entfernt hauptsächlichassert
Anweisungen undif __debug__
Code, so dass es für die meisten Codes keine Auswirkungen hat. Weitere Informationen finden Sie unterman python
und „Was macht die Python-Optimierung?“ .Beachten Sie auch, dass Sie keine Datei kompilieren müssen , um
.py
sie auszuführen. Python ist eine interpretierte Sprache, und Sie können die Skripte direkt ausführen, indem Sie Folgendes verwenden:Oder machen Sie Ihr Skript ausführbar, indem Sie
#!/usr/bin/env python
es oben im Skript einfügen, die Datei mit ausführbar machenchmod +x hello.py
und dann ausführen :Die Tatsache, dass Python Ihr
.py
Skript.pyc
aus Leistungsgründen intern zu Bytecode- Dateien kompiliert, ist ein Implementierungsdetail. Wenn Sie keinen triftigen Grund dafür haben, lassen Sie Python selbst entscheiden, wann und ob es kompiliert werden soll.quelle
chmod +x
) geben, wie liest der Interpreter das Skript?#!/path/to/interpreter
, führt der Kernel das aus, was dort deklariert ist, und übergibt den Skriptpfad als Argument. In meinem Beispiel ist, wenn Sie ausführen,./hello.py
was tatsächlich ausgeführt wird/usr/bin/env python ./hello.py
. Siehe en.wikipedia.org/wiki/Shebang_(Unix)chmod +x
gewährt ausführen, und nicht vorhandene Berechtigungen berühren so vermutlich ist es zusätzlich lesbar jetzt ausführbar ist.Check out this link In Python kompilieren
In der Mitte der Seite wird über das py_compile-Modul gesprochen, das importiert werden kann. Die Syntax lautet wie folgt:
Diese Kompilierungsmethode führt das Modul auch nicht aus wie das Ausführen von python file.py.
Es gibt auch eine Methode, die einen gesamten Verzeichnisbaum kompiliert, aber ich lasse Sie den Link überprüfen, um zu sehen, wie das ausgeführt wird.
Hoffe das hilft.
quelle
Sie können auch versuchen
compileall
:quelle
Sie können Python-Skripte mit verschiedenen Methoden zu einem Binärcode kompilieren, aber ich habe herausgefunden, dass die Verwendung von Nuitka effizienter ist.
Nuitka ist ein Python-zu-C ++ - Compiler, der fast alle Versionen von Python unterstützt.
Die Befehlssyntax ist so einfach wie
Goto http://nuitka.net/doc/user-manual.html für weitere Informationen.
quelle