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.

Autor

About me


Mein Name ist Oliver Lohse. Ich bin diplomierter Wirtschafts-Informatiker und Organisations-Programmierer in verschiedenen Programmier-Sprachen und Markup-Dialekten, z.B. Java, JEE, COBOL, PHP, Python, MySQL, HTML, CSS, ANSI C, Lisp, Rexx, JavaScript, Scheme, ActionScript 2.0, Maschinensprache, Assembler und JCL. Seit mehr als 24 Jahren arbeite ich als Entwickler in einem großen Softwareunternehmen für Versicherungen in Hannover Niedersachsen und seit etwa 37 Jahren im EDV-Sektor mit wechselnden Aufgaben.

Meta: Instagram CMSWorkbench.de GIMP-Handbuch.de Kontakt Impressum Datenschutz