Un mémo lorsque le programme Python [.py] est converti en exe [.exe] pour l'empêcher d'être personnalisé. Il existe plusieurs façons de transformer Python en un exe, mais cette fois, nous utiliserons PyInstaller, ce qui peut être fait facilement.
Référence: PyInstaller Quickstart
Vous pouvez en faire un exe avec pip et la commande suivante sans modifier le code source. C'est tout, donc c'est très simple. Si vous voulez juste en faire un exe, c'est bien. La dernière moitié présente comment écrire PyInstaller en code Python, veuillez donc vous y référer si vous êtes intéressé.
pip install pyinstaller
pyinstaller yourprogram.py
Certaines options peuvent être spécifiées au moment de l'exécution. Les options fréquemment utilisées sont résumées en référence aux documents suivants. Référence: [Utilisation de PyInstaller](https://pyinstaller.readthedocs.io/en/stable/usage.html https://gist.github.com/devlights/2ea169b60063d81f0526eceebeb7a8c6)
option | une fonction |
---|---|
-n, --name | Spécifier le nom du fichier généré(la valeur par défaut est le nom du script) |
--specpath DIR | Spécifiez le dossier de génération(la valeur par défaut est le DIR actuel) |
-D,--onedir | Tout sortir dans un seul répertoire |
-F,--onefile | Sortie dans un fichier |
option | une fonction |
---|---|
-w, --windowed, --noconsole | Cacher la console |
-i, --icon | Icône du programme[.extension ico]Mettre en place |
option | une fonction |
---|---|
--clean, --noconsole | Effacer le cache PyInstaller et supprimer les fichiers temporaires avant la construction |
-y, --noconfirm | Remplacer le répertoire de sortie sans demander de confirmation |
-v, --version | Afficher les informations de version du programme et quitter |
option | une fonction |
---|---|
--exclude | Ignorez le module ou le package spécifié. Peut être utilisé plusieurs fois |
pyinstaller yourprogram.py --exclude numpy,-v, -i data.icon
Référence du document officiel 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'),
])
C'était un mémo de PyInstaller qui peut faire de Python un exe. C'est pratique de pouvoir le faire en deux lignes. Cependant, il y a une préoccupation. Si vous vous référez à ce qui suit, il semble qu'il y ait un problème lié au fait que le fichier exe est volumineux et que son exécution prend beaucoup de temps. Si la cible que vous souhaitez exécuter ne tient pas compte de la vitesse de traitement, veuillez l'essayer. [Sad news] PyInstaller crachera un fichier exe de 300 Mo
Merci pour la lecture. Si vous avez des inquiétudes, veuillez faire une demande de modification ou un commentaire. Si vous le souhaitez, veuillez également LGTM.
Recommended Posts