Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
utilisateurs:bcag2:tutoriel:python-virtualenv [Le 20/03/2026, 14:44] – supprimée bcag2utilisateurs:bcag2:tutoriel:python-virtualenv [Date inconnue] (Version actuelle) – modification externe (Date inconnue) 127.0.0.1
Ligne 1: Ligne 1:
 +{{tag> programmation python BROUILLON}}
  
 +----
 +
 +====== Python et les environnements virtuels ======
 +
 +Il est souvent utile de mettre en place un environnement virtuel dans lequel va être installés les modules utilisés. Cela évite de les installé dans le système d'exploitation lui-même, avec les problèmes de version que ça peut engendrer.
 +
 +<note important>Ce tutoriel se base sur le fait d'utiliser au moins la version 3.3 de Python qui inclue les fonctionnalités d'environnements virtuels</note>
 +
 +Dans le terminal, on peut commencer par voir les modules installés indépendamment de tout environnement virtuel :
 +<code bash>pip list</code>
 +La liste peut être assez longue, surtout si vous aviez déjà installé des modules !
 +
 +===== Création d'un environnement virtuel =====
 +
 +<code bash>
 +python -m venv env-virtuel1
 +# Cela crée un dossier env-virtuel1 dans le dossier courant
 +ls env-virtuel1
 +# doit nous retourner
 +bin  include  lib  lib64  pyvenv.cfg
 +# avec lib64 qui est un lien vers lib/
 +</code>
 +<note tip>Pour plus de lisibilité, le répertoire contenant les fichiers pour l'environnement virtuel est ici nommé //env-virtuel1//.\\ 
 +Dans de nombreux exemple ou mécanisme d'outils/ide, on trouvera le nom **//.venv//** en répertoire caché, nom que l'on peut ajouter au fichier //.gitignore// si on versionne notre projet avec [[:git]]</note>
 +===== Activation =====
 +<code bash>
 +source env-virtuel1/bin/activate
 +</code>
 +<note warning>N’oubliez pas le /bin/ dans le chemin, sinon vous aurez un message //Aucun fichier ou dossier de ce nom//</note>
 +
 +Votre invité de commande doit changer et devenir :
 +<code bash>
 +(env-virtuel1) mon-nom2user@mon-nom2pc:~/mon/chemin/$
 +</code>
 +
 +Exécuter :
 +<code bash>
 +pip list
 +# doit vous retourner (la version va évidemment changer dans le temps)
 +Package Version
 +------- -------
 +pip     24.0
 +</code>
 +
 +Vous pouvez maintenant ajouter les modules dont vous avez besoin et travailler avec, par exemple, ajout de //numpy// :
 +<code bash>
 +pip install numpy
 +# et
 +pip list
 +# qui doit maintenant retourner :
 +Package Version
 +------- -------
 +numpy   2.3.3
 +pip     24.0
 +</code>
 +
 +===== Désactivation =====
 +Exécuter simplement la commande //deactivate//
 +<code bas>
 +(env-virtuel1) mon-nom2user@mon-nom2pc:~/mon/chemin/$ deactivate
 +# le préfixe d’invité de commande doit revenir à 
 +mon-nom2user@mon-nom2pc:~/mon/chemin/$
 +</code>
 +
 +===== Voir aussi =====
 +  * [[https://docs.python.org/fr/3.13/library/venv.html|doc officielle]]
 +  * [[https://pixi.prefix.dev/latest/|Pixi]] gestionnaire de bibliothèques et de projet pour python et autres languages
 +  * [[https://docs.astral.sh/uv/|uv]] gestionnaire de bibliothèques et de projet pour python