J'essaie de convertir un programme Python assez simple en un exécutable et je ne pouvais pas trouver ce que je cherchais. J'ai donc quelques questions (j'utilise Python3.6):
Les méthodes de ce que j'ai trouvé jusqu'à présent sont les suivantes
pyinstaller/py2exe
Voici ce que j'ai essayé/quels problèmes j'ai rencontrés.
pyinstaller
avant le téléchargement requis avant (pypi-quelque chose) afin que cela ne fonctionne pas. Après avoir téléchargé le fichier de prérequis, pyinstaller
ne le reconnaît toujours pas. Etapes pour convertir .py en .exe en Python 3.6
pip install cx_Freeze
.pip install idna
..py
nommé myfirstprog.py
.setup.py
dans le répertoire actuel de votre script.setup.py
, code ci-dessous et enregistrez-le.python setup.py build
build
. Il y a un autre dossier dedans. Dans ce dossier, vous pouvez trouver votre application. Exécuter. Fais toi plaisir.Voir le script original dans mon blog .
setup.py:
from cx_Freeze import setup, Executable
base = None
executables = [Executable("myfirstprog.py", base=base)]
packages = ["idna"]
options = {
'build_exe': {
'packages':packages,
},
}
setup(
name = "<any name>",
options = options,
version = "<any number>",
description = '<any description>',
executables = executables
)
MODIFIER:
myfirstprog.py
, vous devriez mettre votre nom de fichier .py
extension tel que créé dans step 4;import
ed de votre .py
dans la liste packages
(ex: packages = ["idna", "os","sys"]
)any name, any number, any description
dans le fichier setup.py
ne devrait pas rester le même, vous devriez le changer en conséquence (ex: name = "<first_ever>", version = "0.11", description = ''
)import
ed doivent être installés avant de démarrer step 8.Python 3.6 n'est toujours pas supporté par Pyinstaller. Donc, pour l'utiliser, vous aurez besoin de Python 3.5 ou ci-dessous. Je ne suis cependant pas sûr de py2exe.
Quoi qu'il en soit, le cas 1 devrait être fait comme ceci:
Ouvrez une fenêtre de commande dans votre dossier Python (ouvrez une fenêtre de commande et utilisez cd
ou tout en maintenant la touche Maj enfoncée, faites un clic droit sur l’explorateur Windows et choisissez "Ouvrir la fenêtre de commande ici"). Puis entrez
pip install pyinstaller
Et c'est tout.
Le moyen le plus simple de l’utiliser est d’introduire sur votre invite de commande
pyinstaller file_name.py
Pour plus de détails sur son utilisation, jetez un œil à cette question .
Mettre à jour
Python 3.6 est maintenant supporté par Pyinstaller
Il y a un projet open source appelé auto-py-to-exe sur Github . En fait, il utilise également Pyinstaller en interne, mais comme il possède une interface graphique simple qui contrôle Pyinstaller, il peut constituer une alternative confortable. Il peut également générer un fichier autonome contrairement à d'autres solutions. Ils fournissent également une vidéo montrant comment le configurer.
GUI:
Sortie:
Je ne peux pas vous dire ce qu'il y a de mieux, mais un outil que j'ai utilisé avec succès dans le passé était cx_freeze. Ils ont récemment mis à jour (le 7 janvier 17) la version 5.0.1, qui prend en charge Python 3.6.
Voici le pypi https://pypi.python.org/pypi/cx_Freeze
Les documents montrent qu'il existe plus d'une façon de le faire en fonction de vos besoins.
http://cx-freeze.readthedocs.io/en/latest/overview.html
Je n'ai pas encore essayé, alors je vais vous montrer un article où la manière simple de le faire a été discutée. Certaines choses peuvent ou peuvent ne pas avoir changé cependant.
Comment utiliser cx_freeze?
py2exe est une extension distutils qui permet de créer des programmes exécutables Windows autonomes (32 bits et 64 bits) à partir de scripts Python. Python 3.3 et versions ultérieures sont pris en charge. Il peut créer des exécutables de console, des exécutables Windows (GUI), des services Windows et des serveurs COM DLL/EXE.
Vous pouvez le télécharger ici:
J'utilise Nuitka et PyInstaller avec mon paquet PySimpleGUI.
Nuitka Il y avait des problèmes pour compiler Tkinter avec Nuikta. L'un des contributeurs du projet a développé un script qui corrige le problème.
Si vous n'utilisez pas tkinter, cela peut "fonctionner" pour vous. Si vous utilisez tkinter, dites-le et je vais essayer de faire publier le script et les instructions.
PyInstaller J'utilise la version 3.6 et PyInstaller fonctionne parfaitement! La commande que j'utilise pour créer mon fichier exe est la suivante:
pyinstaller -wF monfichier.py
Le -wF créera un seul fichier EXE. Étant donné que tous mes programmes ont une interface graphique et que je ne souhaite pas afficher la fenêtre de commande, l'option -w masque la fenêtre de commande.
C’est aussi proche d’obtenir ce que ressemble un programme Winforms à exécuter écrit en Python.