[wiki: Outils de base]
Implémentations de Python
- CPython : la plus courante, écrite en langage C.
- Jython : alternative en Java, utilisant la JVM Java.
- !IronPython : alternative basée sur .NET .
- !PyPy : alternative écrite en Python.
Interpréteur en ligne de commande
Options courantes :
-c: exécute la commande passée en argument,-i: passe en mode interactif après avoir exécuter un script ou une commande,-d: mode debug.
Environnements de développement
- IDLE : l’outil de base livré avec Python.
- IPython : version améliorée (Découverte de l’interpréteur interactif IPython).
- Spyder : atelier plus complet, orienté science.
- PyCharm
Outils d’installation de paquets additionnels
Distutils
Disutils est un ensemble d’outils permettant de construire des distributions (ensemble de modules distribués ensemble) prêtes à être installées, par exemple un « rpm » pour linux, ou bien des distributions de fichiers source.
Pour installer une telle distribution de fichiers sources :
1. télécharger le fichier d’archive, généralement un tarball sous unix et zip sous windows ;
1. procéder à l’extraction des fichiers,
1. lancer la commande python setup.py install
Cette commande va copier les fichiers de build/lib (ou build/lib.<platform>) vers le répertoire réservé aux modules tiers de l’installation Python. Les répertoires par défaut sont :
- Sous Windows:
C:\PythonXY\Lib\site-packages - Sous Unix:
/usr/local/lib/pythonX.Y/site-packages
Certaines options permettent de choisir d’autres répertoires d’installation :
python setup.py install --user: installation dans$HOME/.local/lib/pythonX.Y/site-packagespython setup.py install --home=<dir>: installation dans<dir>/lib/pythonpython setup.py install --prefix=<dir>: installation dans<dir>/lib/pythonX.Y/site-packages
Setuptools, Python Eggs & easy_install
L’extension Setuptools améliore sensiblement Distutils.
Elle définit un nouveau format d’archive qui prend en compte les dépendances, le format egg (ce format est maintenant appelé à être remplacé par le nouveau format « wheel »).
Pour installer une distribution Egg, utilisez easy_install.
!PyPi & Pip
Le Python Package Index (!PyPi) sert de dépôt central officiel pour toutes les distributions que les développeurs veulent partager.
Pour installer des distributions externes, on conseille maintenant d’utiliser Pip (Python installing package). De conception plus récente qu’easy_install, cet outil cherche les distributions demandées sur le Python Package Index (!PyPi), et gère les dépendances entre distributions. MAIS il ne gère pas le format Egg.
!PyPi & Pip
Le Python Package Index (!PyPi) sert de dépôt central officiel pour toutes les distributions que les développeurs veulent partager. Distutils dispose de commandes pour transférer une distribution sur !PyPi. La nouvelle commande twine permet de le faire de façon plus sécurisée.
Pour installer des distributions externes, on vous conseille maintenant d’utiliser Pip (Python installing package). De conception plus récente qu’easy_install, cet outil cherche les distributions demandées sur le Python Package Index (!PyPi), et gère les dépendances entre distributions. MAIS il ne gère pas le format Egg.
#!comment
Références
Setuptools, Python Eggs & easy_install
L'extension Setuptools améliore sensiblement distutils.
- Découverte automatique des paquets :
find_packages() calcule automatiquement la valeur à passer à l'argument package de la fonction setup(). - Gestion des dépendances :
install_requires, un nouvel argument de setup(), permet lister les autres distributions dont dépend la distribution courante. - Format egg : format d'archive amélioré. Il est maintenant appelé à être remplacé par le nouveau format wheel.
Par ailleurs, les Setuptools disposent d'un mode "développement". Plutôt que d'installer vraiment une distribution en cours de développement, vous pouvez créer temporairement dans la zone d'installation un lien symbolique vers le répertoire courant, de façon que vos modifications soient instantanément visibles à un client extérieur. Cette pseudo-installation se fait avec la commande python setup.py develop. Pour sortir de ce mode développement en supprimant le lien symbolique, utilisez la commande python setup.py develop --uninstall.
Enfin, l'extension fournit une nouvelle commande d'installation d'une distribution egg, easy_install, qui prend en compte les dépendances définies par install_requires.