Ein Memo, wenn das Python-Programm [.py] in exe [.exe] konvertiert wird, um zu verhindern, dass es personalisiert wird. Es gibt verschiedene Möglichkeiten, Python zu einer Exe zu machen, aber dieses Mal werden wir PyInstaller verwenden, was leicht möglich ist.
Referenz: PyInstaller-Schnellstart
Sie können es mit pip und dem folgenden Befehl zu einer Exe machen, ohne den Quellcode zu bearbeiten. Das ist alles, also ist es sehr einfach. Wenn Sie es nur zu einer Exe machen wollen, ist das in Ordnung. In der zweiten Hälfte wird beschrieben, wie Sie PyInstaller in Python-Code schreiben. Wenn Sie interessiert sind, lesen Sie bitte die Informationen.
pip install pyinstaller
pyinstaller yourprogram.py
Es gibt Optionen, die zur Laufzeit angegeben werden können. Die häufig verwendeten Optionen werden unter Bezugnahme auf die folgenden Materialien zusammengefasst. Referenz: [Verwenden von PyInstaller](https://pyinstaller.readthedocs.io/en/stable/usage.html https://gist.github.com/devlights/2ea169b60063d81f0526eceebeb7a8c6)
Möglichkeit | Funktion |
---|---|
-n, --name | Angabe des Namens der generierten Datei(Standard ist der Skriptname) |
--specpath DIR | Geben Sie den Generierungsordner an(Standard ist das aktuelle DIR) |
-D,--onedir | Alle in einem Verzeichnis ausgeben |
-F,--onefile | Ausgabe in einer Datei |
Möglichkeit | Funktion |
---|---|
-w, --windowed, --noconsole | Verstecke die Konsole |
-i, --icon | Programmsymbol[.ico Erweiterung]Einstellen |
Möglichkeit | Funktion |
---|---|
--clean, --noconsole | Leeren Sie den PyInstaller-Cache und löschen Sie temporäre Dateien, bevor Sie sie erstellen |
-y, --noconfirm | Ersetzen Sie das Ausgabeverzeichnis, ohne nach einer Bestätigung zu fragen |
-v, --version | Informationen zur Programmversion anzeigen und beenden |
Möglichkeit | Funktion |
---|---|
--exclude | Ignorieren Sie das angegebene Modul oder Paket. Kann mehrfach verwendet werden |
pyinstaller yourprogram.py --exclude numpy,-v, -i data.icon
Offizielle Dokumentreferenz https://pyinstaller.readthedocs.io/en/stable/usage.html
sample.py
import PyInstaller.__main__
PyInstaller.__main__.run([
'--name=%s' % package_name,
'--onefile',
'--windowed',
'--add-binary=%s' % os.path.join('resource', 'path', '*.png'),
'--add-data=%s' % os.path.join('resource', 'path', '*.txt'),
'--icon=%s' % os.path.join('resource', 'path', 'icon.ico'),
os.path.join('my_package', '__main__.py'),
])
Es war ein Memo von PyInstaller, das Python zu einer Exe machen kann. Es ist praktisch, dies in zwei Zeilen zu tun. Es gibt jedoch ein Problem. Wenn Sie sich auf Folgendes beziehen, scheint es ein Problem zu geben, dass die exe-Datei groß ist und die Ausführung lange dauert. Wenn das Ziel, das Sie ausführen möchten, die Verarbeitungsgeschwindigkeit nicht berücksichtigt, versuchen Sie es bitte. [Traurige Neuigkeiten] PyInstaller wird eine 300-MB-Exe-Datei ausspucken
Danke fürs Lesen. Wenn Sie Bedenken haben, stellen Sie bitte eine Bearbeitungsanfrage oder einen Kommentar. Wenn Sie möchten, bitte auch LGTM.
Recommended Posts