Utilisé par la NASA, ILM, Disney et les pirates informatiques, Python est un langage de programmation polyvalent et un choix idéal pour les débutants. Que vous créiez simplement un « Hello World » ou une application complète, Python a besoin d’un interpréteur et d’un tas de bibliothèques de support pour fonctionner. Et si nous pouvions créer une application graphique, le tout regroupé dans un seul fichier exécutable ?
Avec auto-py-to-exe ,un projet de Brent Vollebregt, nous pouvons facilement créer nos propres applications Python exécutables. Sous l’interface graphique se trouve PyInstaller, une application basée sur un terminal permettant de créer des exécutables Python pour Windows, Mac et Linux. Les vétérans Pythonistas seront familiarisés avec le fonctionnement de PyInstaller, mais avec auto-py-to-exe, tout utilisateur peut facilement créer un seul exécutable Python pour son système.
Dans ce guide, nous allons créer une application GUI Python à l’aide d’EasyGUI, puis utiliser auto-py-to-exe pour créer une application autonome qui s’exécutera sur n’importe quel système Microsoft Windows, y compris les systèmes sur lesquels Python n’est pas installé. Les utilisateurs Linux et Mac devront utiliser l’outil de ligne de commande PyInstaller sous-jacent. Une application simple peut être créée à l’aide d’une instruction sur une seule ligne. En ajoutant plus d’arguments, nous pouvons inclure des icônes, des bibliothèques packagées, etc.
Par exemple voici le code pour créer une application onefile en utilisant app.py comme code de projet.
pyinstaller --onefile app.py
Là où auto-py-to-exe diffère, c’est que nous avons un moyen plus simple de créer une application à l’aide d’un outil graphique.
Comment installer auto-py-to-exe
1. Ouvrez une invite de commande en recherchant CMD.
2. Utilisez le pip du gestionnaire de packages Python pour installer auto-py-to-exe.
pip install auto-py-to-exe
Créer un script de test
Notre exemple d’application est une interface graphique simple pour lancer l’une des trois applications. Nous utilisons la bibliothèque EasyGUI Python car elle résume les complexités de la création d’une application graphique. Tout ce que nous devons fournir est la logique qui pilote l’application.
1. Ouvrir un PowerShell en faisant un clic droit sur l’icône Windows et en sélectionnant PowerShell.
2. Installez EasyGUI en utilisant pip.
pip install easygui
3. Ouvrez un éditeur de texte pour écrire le script de test Python. Nous avons choisi d’utiliser Bloc-notes++mais vous êtes libre d’utiliser votre éditeur préféré.
4. Importez deux modules Python, easygui et os. Easygui crée l’application GUI et le système d’exploitation permet au code d’interagir avec le système d’exploitation.
import easygui
import os
5. Créez deux variables, une pour un message (msg) à l’utilisateur tandis que l’autre devient le titre de l’application.
msg = "Load application..."
title="Tom's Hardware Application Starter"
6. Créer une liste, les choix, et à l’intérieur, stockez trois valeurs qui sont les noms des applications. Les listes sont des tableaux de Python. Objets pouvant stocker plusieurs éléments. Chaque élément a un index numérique, commençant à zéro.
choices = ["Google Chrome","Slack","PuTTY"]
7. Créer un objet, Réponsepour poser une question à l’utilisateur. Dans ce cas, nous utilisons une boîte à boutons d’EasyGUI, chaque bouton est une option de la les choix liste. L’application choisie est stockée dans le Réponse objet.
reply = easygui.buttonbox(msg, title, choices=choices)
8. Utilisez une instruction conditionnelle pour lire la valeur stockée dans Réponse et comparez-le à trois conditions. Les premiers contrôles Réponse pour voir s’il contient « Google Chrome » si c’est le cas, il ouvrira le navigateur Google Chrome. Le fichier de démarrage nécessite l’utilisation d’un chemin d’accès complet au fichier vers l’application. Nous devons utiliser le double \ dans le chemin car Python utilise pour insérer des caractères illégaux dans une chaîne.
if reply == "Google Chrome":
os.startfile("C:\Program Files\Google\Chrome\Application\chrome.exe")
9. Utilisez une autre instruction conditionnelle pour vérifier Réponse pour le mou.
elif reply == "Slack":
os.startfile("C:\Users\lespo\AppData\Local\slack\slack.exe")
dix. Ajoutez une autre instruction conditionnelle pour charger PuTTY. Notez que pour PuTTY nous utilisons le os.system fonctionner comme PuTTY est une application enregistrée avec le chemin Windows.
elif reply == "PuTTY":
os.system("putty")
11. Fermez le test conditionnel avec un autre condition pour attraper toute autre entrée.
else:
print("Done")
12. Enregistrez le fichier sous app.py au Bureau. Si vous utilisez une image dans l’application, assurez-vous que l’image se trouve également sur le bureau.
Exemple complet de liste de codes
import easygui
import os
msg = "Load application..."
title="Tom's Hardware Application Starter"
choices = ["Google Chrome","Slack","PuTTY"]
reply = easygui.buttonbox(msg, title , choices=choices)
if reply == "Google Chrome":
os.startfile("C:\Program Files\Google\Chrome\Application\chrome.exe")
elif reply == "Slack":
os.startfile("C:\Users\lespo\AppData\Local\slack\slack.exe")
elif reply == "PuTTY":
os.system("putty")
else:
print("Done")
Utiliser auto-py-to-exe
1. Ouvrir une invite de commande en recherchant CMD.
2. Exécutez auto-py-to-exe à partir de l’invite.
auto-py-to-exe
3. Cliquez sur Parcourir et accédez à notre exemple de fichier Python.
4. Configurez l’application pour qu’elle utilise un seul fichier. Cela condensera l’application et les bibliothèques Python de support dans un seul fichier exécutable.
5. Définissez l’application pour qu’elle soit basée sur la console. En faisant cela, nous verrons toutes les erreurs affichées à l’invite de commande. Une fois que nous sommes convaincus que l’application fonctionne correctement, nous pouvons la définir sur Basé sur la fenêtre.
6. Cliquez sur le menu déroulant Icône et sélectionnez une icône pour votre application. Il s’agit d’une étape facultative, mais elle ajoute un niveau de qualité supplémentaire à votre application. Les icônes doivent être des fichiers .ico et nous avons utilisé une image de 64×64 pixels comme icône.
7. Cliquez sur Avancé et sous -Nom, entrez le nom de votre application. Nous avons choisi le lanceur d’applications.
8. Défiler vers le bas et cliquez sur CONVERTIR .PY en .EXE pour démarrer le processus. Cela prendra quelques minutes.
9. Cliquer sur Ouvrir le dossier de sortie pour ouvrir le dossier contenant l’application.
dix. Double-cliquez sur l’icône pour exécuter votre application.