Cx Freeze ist ein Python-Programm, mit dem du ein Skript in eine eigenständige ausführbare Datei für Linux, MacOS oder Windows umwandeln kannst. Ein Programm ausführbar zu machen, d. h. den Code zu kompilieren, ist wichtig, um seine Datei leicht verbreiten zu können.
Cx Freeze ist das Programm, das das Python-Skript mit all seinen Abhängigkeiten in eine ausführbare Datei kompiliert. Aber wie funktioniert Cx Freeze? Warum sollte man es benutzen? Wie wird es installiert und verwendet? Antworten auf deine Fragen findest du in diesem Artikel.
Wie funktioniert Cx Freeze?
Ein Python-Skript ist von mehreren Modulen abhängig. Es benötigt die Bibliotheken und Dateien des Python-Systems. Cx Freeze ermöglicht es, die Abhängigkeiten des Skripts zu analysieren, um eine eigenständige ausführbare Datei zu erstellen.
Der Name Cx Freeze wird verwendet, weil dieses Programm das Python-Skript mit seinen Abhängigkeiten in eine ausführbare Datei „einfriert“ (engl. freeze).
Das Programm analysiert die Abhängigkeiten, um die importierten Python-Module, Ressourcen und externen Bibliotheken zu identifizieren, die für die Ausführung der Datei notwendig sind.
Dann erstellt es eine virtuelle Umgebung, in die es die benötigten Dateien und Module kopiert.
Schließlich erstellt Cx Freeze die eigenständige ausführbare Datei: Sie benötigt keine externe Python-Installation.
Warum sollte man es verwenden?
Das Python-Programm cx_Freeze bietet mehrere Vorteile (es gibt es nicht umsonst!). Musst du ein Python-Skript mit anderen teilen?
Dein Kollege oder Partner findet es vielleicht mühsam, Python und alle Abhängigkeiten zu installieren. Das Programm cx_Freeze überspringt diese Installation mit einer einzigen ausführbaren und leicht verteilbaren Datei.
Ein weiterer Pluspunkt ist die Vertraulichkeit des Python-Skripts. Du musst den Quellcode nicht mehr offenlegen: Durch die Erstellung einer ausführbaren Datei kannst du einfach die Datei und nicht deinen Code weitergeben.
Schließlich ist cx_Freeze für Entwickler einfach zu benutzen. Obwohl du die ausführbare Datei testen musst, um sicherzustellen, dass sie funktioniert, ist ihre Erstellung schnell und intuitiv.
Wie installiere und verwende ich Cx Freeze?
Du kannst die neueste Version von cx_Freeze installieren, indem du den Befehl pip verwendest:
pip install --upgrade cx_Freeze
Einige Betriebssysteme verlangen möglicherweise die Verwendung von Python3 und pip3 anstelle anderer Versionen.
Du kannst auch den Befehl pipenv verwenden, um cx_Freeze zu installieren und zu aktualisieren:
pipenv install cx_Freeze
pipenv update cx_Freeze
Wenn du Anaconda benutzt, solltest du cx_Freeze über den Befehl conda installieren:
conda install -c conda-forge cx_freeze
Nachdem wir cx_Freeze installiert haben, müssen wir eine Python-Datei erstellen, um das Programm zu kompilieren: Wir nennen sie setup.py. Der Code sieht wie folgt aus (ändere die Parameter, wenn du die ausführbare Datei anpassen möchtest):
import sys
from cx_Freeze import setup, Executable
# Abhängigkeiten werden automatisch erkannt, aber es kann nötig sein, sie anzupassen.
build_exe_options = {
„excludes“: [„tkinter“, „unittest“],
„zip_include_packages“: [„encodings“, „PySide6“],
}
# base=“Win32GUI“ sollte nur mit der Windows GUI App verwendet werden
base = „Win32GUI“ if sys.platform == „win32“ else None
setup(
name=“guifoo“,
version=“0.1″,
description=“My GUI application!“,
options={„build_exe“: build_exe_options},
executables=[Executable(„guifoo.py“, base=base)],
)
Ersetze „guifoo“ und „guifoo.py“ durch die Datei, die du umwandeln möchtest.
Führe dann den Befehl aus:
python setup.py build
Dieser Befehl wird einen Unterordner namens „build“ mit einem weiteren Unterordner erstellen, der mit den Buchstaben „exe.“ beginnt und mit der Kennung der Plattform oder deiner Version von Python endet. Dadurch können mehrere Plattformen problemlos erstellt werden.
Cx_Freeze: Das Python-Programm in Kürze
Das Programm cx_Freeze ist eine große Hilfe für Entwickler: Es kompiliert den Code und macht ihn selbstständig ausführbar. Das Programm identifiziert die Module, die zur Ausführung der Datei benötigt werden, und kopiert sie in eine virtuelle Umgebung. Cx_Freeze bietet eine vereinfachte Verteilung, unübertroffene Portabilität und die Vertraulichkeit des Quellcodes. Um Cx_Freeze zu installieren und zu verwenden, folge einfach der Anleitung oben in diesem Artikel.