Der Python Compiler

Geben Sie Ihre Scripte an Dritte weiter, dann möchten Sie Ihr geistiges Eigentum oft schützen. Sie können in Python den internen ByteCode Compiler nutzen, um Ihre Scripte umzuwandeln, damit sind sie nicht mehr für Menschen lesbar.

Der Schutz des geistigen Eigentums von Programmen stellt sich in jeder Programmiersprache, so auch in Python. Scripte die Sie in hohem Zeitaufwand erzeugt und erdacht haben können Sie dadurch schützen, indem Sie diese in Bytcode umwandeln. Python bietet dafür einen internen Bytecode-Compiler, den Sie wie folgt aufrufen können:

python -OO -m py_compile mein-script.py

Der Compiler erzeugt dann eine gleichlautende Datei jedoch mit der Extension *.pyo, die Sie wie jedes andere Pythonscript behandeln und auch ebenso starten können (z.B.: python mein-script.pyo). Jedoch ist das Editieren bzw. das Lesen des Quellcodes für Menschen nicht mehr möglich.

Der Parameter -m fordert Python auf, das Bibliotheks-Modul py_compile als reguläres Script zu behandeln. Damit können Sie es wie jedes andere Script an der Komandozeile aufrufen.

Der Parameter -OO startet die Umwandlung in den Bytecode und die Optimierung durch entfernen von Kommentaren innerhalb des Scripts.

Hinweis: Da ich vorzugsweise auf Linux (Intel-PC, Raspberry, YUN, ESP32, ...) arbeite, kann ich nicht sagen wie portabel der erzeugte Bytecode in Wirklichkeit ist. In der Theorie sollte er natürlich ebenso auch auf Windows oder Mac-Rechnern vom Python-Interpreter verstanden werden, jedoch habe ich das nie getestet.