Installing Python modules
*************************

As a popular open source development project, Python has an active
supporting community of contributors and users that also make their
software available for other Python developers to use under open-
source license terms.

Cela permet aux utilisateurs de Python de partager et de collaborer
efficacement, bénéficiant des solutions que les autres ont déjà crées
pour résoudre les problèmes communs (ou même, parfois, rares !), aussi
que de partager leurs propres solutions à tous.

Ce guide couvre la partie installation. Pour un guide sur la création
et le partage de vos propres projets Python, consultez le Python
packaging user guide.

Note:

  Pour les entreprises et autres institutions, gardez en tête que
  certaines organisations ont leurs propres règles sur l'utilisation
  et la contribution au logiciel libre. Prenez ces règles en compte
  lorsque vous utilisez les outils de distribution et d'installation
  fournis par Python.


Vocabulaire
===========

* **pip** is the preferred installer program. It is included by
  default with the Python binary installers.

* Un *environnement virtuel* est un environnement Python semi-isolé
  qui autorise les paquets à être installés pour une application
  particulière, plutôt que d'être installés au niveau du système.

* "venv" is the standard tool for creating virtual environments. It
  defaults to installing **pip** into all created virtual
  environments.

* "virtualenv" is a third-party alternative (and predecessor) to
  "venv".

* The Python Package Index (PyPI) is a public repository of open
  source licensed packages made available for use by other Python
  users.

* The Python Packaging Authority is the group of developers and
  documentation authors responsible for the maintenance and evolution
  of the standard packaging tools and the associated metadata and file
  format standards. They maintain a variety of tools, documentation,
  and issue trackers on GitHub.

Modifié dans la version 3.5: L'utilisation de "venv" est maintenant
recommandée pour créer vos environnements virtuels.

Voir aussi:

  Guide Utilisateur de l'Empaquetage Python : Créer et utiliser des
  environnements virtuels


Utilisation de base
===================

Les outils standards de création de paquets sont tous conçus pour être
utilisés à partir de la ligne de commande.

The following command will install the latest version of a module and
its dependencies from PyPI:

   python -m pip install SomePackage

Note:

  Pour les utilisateurs POSIX (y compris Mac OS X et Linux), les
  exemples de ce guide supposent l'utilisation d'un *environnement
  virtuel*.Pour les utilisateurs de Windows, les exemples de ce guide
  supposent que l'option proposant de modifier la variable
  d'environnement PATH à été cochée lors de l'installation de Python.

Il est aussi possible de préciser une version minimum exacte
directement depuis la ligne de commande. Utiliser des caractères de
comparaison tel que ">", "<" ou d'autres caractères spéciaux qui sont
interprétés par le *shell*, le nom du paquet et la version doivent
être mis entre guillemets :

   python -m pip install SomePackage==1.0.4    # specific version
   python -m pip install "SomePackage>=1.0.4"  # minimum version

Normalement, si un module approprié est déjà installé, l'installer à
nouveau n'aura aucun effet. La mise à jour de modules existants doit
être demandée explicitement :

   python -m pip install --upgrade SomePackage

More information and resources regarding **pip** and its capabilities
can be found in the Python Packaging User Guide.

La création d'environnements virtuels est réalisée grâce au module
"venv". Installer des paquets au sein de l'environnement virtuel
courant utilise les commandes montrées précédemment.

Voir aussi:

  Guide Utilisateur de l'Empaquetage Python : Installer les paquets de
  la distribution Python


Comment puis-je … ?
===================

Ce sont des réponses rapides ou des liens pour certaines tâches
courantes.


... Installer des paquets juste pour l'utilisateur actuel ?
-----------------------------------------------------------

Donner l'option "--user" à "python -m pip install" lui fera installer
un paquet juste pour l'utilisateur en cours, plutôt que pour tous les
utilisateurs du système.


... Installer des paquets Python scientifiques ?
------------------------------------------------

A number of scientific Python packages have complex binary
dependencies, and aren't currently easy to install using **pip**
directly. It will often be easier for users to install these packages
by other means rather than attempting to install them with **pip**.

Voir aussi:

  Guide Utilisateur de l'Empaquetage Python : Installer des paquets
  scientifiques


... Travailler avec plusieurs versions de Python installés en parallèle ?
-------------------------------------------------------------------------

On Linux, macOS, and other POSIX systems, use the versioned Python
commands in combination with the "-m" switch to run the appropriate
copy of **pip**:

   python3    -m pip install SomePackage  # default Python 3
   python3.14 -m pip install SomePackage  # specifically Python 3.14

Appropriately versioned **pip** commands may also be available.

On Windows, use the **py** Python launcher in combination with the
"-m" switch:

   py -3    -m pip install SomePackage  # default Python 3
   py -3.14 -m pip install SomePackage  # specifically Python 3.14


Les problèmes d'installation typiques
=====================================


Installer dans le Python du système sur Linux
---------------------------------------------

On Linux systems, a Python installation will typically be included as
part of the distribution. Installing into this Python installation
requires root access to the system, and may interfere with the
operation of the system package manager and other components of the
system if a component is unexpectedly upgraded using **pip**.

On such systems, it is often better to use a virtual environment or a
per-user installation when installing packages with **pip**.


"Pip" n'est pas installé
------------------------

It is possible that **pip** does not get installed by default. One
potential fix is:

   python -m ensurepip --default-pip

There are also additional resources for installing pip.


Installation d'extensions binaires
----------------------------------

Python once relied heavily on source-based distribution, with end
users being expected to compile extension modules from source as part
of the installation process.

With the introduction of the binary wheel format, and the ability to
publish wheels through PyPI, this problem is diminishing, as users are
more regularly able to install pre-built extensions rather than
needing to build them themselves.

Some of the solutions for installing scientific software that are not
yet available as pre-built wheel files may also help with obtaining
other binary extensions without needing to build them locally.

Voir aussi:

  Guide Utilisateur de l'Empaquetage Python : Extensions binaires
