les setup et Cx_Freeze
PIP est une commande interne de python qui vous permet d’interagir avec les modules. Vous pouvez donc ainsi, installer ou désinstaller des modules de votre IDLE, les mettre à jour ou effectuer d’autres taches.
La liste des modules que
vous pouvez installer avec pip sont disponible sur le site : https://pypi.org/
.
Ce site comporte une
ensemble de module que des programmeurs python comme vous et moi, ont développé
et mis en ligne pour pouvoir les rendre accessible à un maximum d’utilisateur.
Installer un
module externe avec pip
-
Ouvrir l’invite de commande : ouvrer demarrer > cmd
Accéder à votre disque système en tapant : cd/ puis validé
- Accéder au dossier dans lequel python est installé dans votre machine :
- Installer un module grace à la commande pip install module:
Nb : l’installation de module se fait avec le
wifi ou les données mobiles.
Autres
fonctionnalité de pip
-
mettre à jour un module : pip install
–upgrade module
-
afficher la version d’un module : pip
show –version module
- désinstaller un module : pip uninstall module
-
revenir à une version précédente du
module : pip install --version module==
1.xx
- afficher de l’aide sur un module : pip –help
- pour les autres commandes, veuillez consulter la liste suivante :
- pour les options associées à pip, veuillez consulter la liste suivante :

création de setup avec Cx_freeze
Ce module vous permettra de créer des versions
exécutables de votre programme sur d’autres machines. En fait compilera votre
code comme le font les langages C/C++ et java.
-installation
du module cx_freeze
Exécutez la commande depuis votre invite de commande
et vérifiez votre connexion internet :
pip
install cx_freeze
-creation d’un setup simple:
monProgramme1.py
from
tkinter import Tk, Label, Button, BOTTOM
root = Tk()
root.title('Button')
Label(text='I am a button').pack(pady=15)
Button(text='Button').pack(side=BOTTOM)
root.mainloop()
monProgramme2.py
from tkinter
import *
root = Tk()
root.title('Button bro')
Label(text='button brother’).pack(pady=15)
Button(text='I am here').pack(side=BOTTOM)
root.mainloop()
setup1.py
import sys
from cx_Freeze
import setup, Executable
base = None
if sys.platform ==
'win32':
base = 'Win32GUI'
executables = [
Executable('monProgramme1.py',
base=base)
]
setup(name='simple_Tkinter',
#nom que votre setup aura
version='0.1',
description='Sample
cx_Freeze Tkinter script',
executables=executables
)
-création
d’un setup complet :
Setup2.py
#!/usr/bin/python
# -*- coding: utf-8 -*-
# Python 3
"""
Icone sous Windows: il faut:
=> un xxx.ico pour integration dans le exe, avec "icon=xxx.ico"
=> un xxx.png pour integration avec PyQt4 + demander la recopie avec
includefiles.
"""
import sys, os
from cx_Freeze import setup, Executable
###########################################################################
##
# preparation des options
# chemins de recherche des modules
# ajouter d'autres chemins (absolus) si necessaire: sys.path +
["chemin1", "chemin2"]
path = sys.path
# options
d'inclusion/exclusion des modules
includes = [] |
# nommer les
modules non trouves par cx_freeze |
# nommer les
packages utilises |
#
copier les fichiers non-Python et/ou repertoires et leur contenu:
includefiles = []
if sys.platform == "win32":
pass
# includefiles += [...] : ajouter les
recopies specifiques à Windows
elif sys.platform == "linux2":
pass
# includefiles += [...] : ajouter les
recopies specifiques à Linux
else:
pass
# includefiles += [...] :
cas du Mac OSX non traite ici
# pour que les bibliotheques binaires
de /usr/lib soient recopiees aussi sous Linux
binpathincludes = []
if sys.platform == "linux2":
binpathincludes +=
["/usr/lib"]
#
niveau d'optimisation pour la compilation en bytecodes
optimize = 0
#
si True, n'affiche que les warning et les erreurs pendant le traitement cx_freeze
silent = True
#
construction du dictionnaire des options
options = {"path": path, "includes": includes, "excludes":
excludes, "packages": packages,
"include_files": includefiles, "bin_path_includes":
binpathincludes,
"create_shared_zip":
False, |
# <= ne pas
generer de fichier zip |
"include_in_shared_zip":
False, |
# <= ne pas generer de fichier |
zip |
|
"compressed":
False, |
# <= ne pas generer de fichier zip |
}
#
pour inclure sous Windows les dll system de Windows necessaires
if sys.platform == "win32":
options["include_msvcr"] =
True
###########################################################################
##
# preparation des cibles
base = None
if sys.platform == "win32":
base = "Win32GUI" # pour
application graphique sous Windows
# base =
"Console" # pour application en console sous Windows
icone = None
if sys.platform == "win32":
icone = "icone.ico" #icone
de votre programme
cible_1 = Executable(script=" monProgramme1.py", base=base,
compress=False, # <= ne pas generer de fichier zip
copyDependentFiles=True, appendScriptToExe=True,
appendScriptToLibrary=False, # <= ne pas generer de
fichier zip
icon=icone
)
cible_2 = Executable( script=" monProgramme2.py", base=base, compress=False,
copyDependentFiles=True, appendScriptToExe=True, appendScriptToLibrary=False,
icon=icone
)
###########################################################################
##
# creation du setup
setup( name="monprogrammeFinal", version="1.00", description="monprogramme",
author="auteurduprogramme", options={"build_exe": options},
executables=[cible_1, cible_2]
)
-générer le
setup
Enfin pour créer votre setup, positionnez dans votre dossier
contenant python.
Ensuite
taper l’une des commandes suivante :
Python
nomDuFichierSetup.py build : crée juste un dossier
Python
nomDuFichierSetup.py build_exe : crée une application .exe
Python
nomDuFichierSetup.py bdist_msi : crée un application .msi pour windows
Python
nomDuFichierSetup.py bdist_dmg crée une application .dmg pour mac_os
Python
nomDuFichierSetup.py bdist_rpm crée une application .rpm pour linux
Exemple :
Créons le setup de notre code monProgamme1.py
contenu dans setup1.py
Commentaires
Enregistrer un commentaire