Comment désactiver un environnement virtuel Python (venv)

PythonBeginner
Pratiquer maintenant

Introduction

Les environnements virtuels Python sont essentiels pour gérer les dépendances des projets de manière isolée. Ce tutoriel vous guidera à travers le processus de désactivation d'un environnement virtuel, vous permettant de basculer entre les projets et de maintenir un flux de travail de développement propre.

Comprendre les environnements virtuels

Avant de désactiver, passons rapidement en revue ce qu'est un environnement virtuel et pourquoi il est important.

Un environnement virtuel est un répertoire autonome qui contient une version spécifique de Python et ses paquets associés. Cet isolement empêche les conflits entre différents projets qui pourraient nécessiter différentes versions du même paquet.

Pourquoi utiliser des environnements virtuels ?

  • Isolement (Isolation) : Maintient les dépendances des projets séparées.
  • Gestion des versions (Version Management) : Permet d'utiliser différentes versions de Python pour différents projets.
  • Reproductibilité (Reproducibility) : Assure des environnements cohérents sur différentes machines.

Créons un environnement virtuel à des fins de démonstration. Ouvrez votre terminal et exécutez les commandes suivantes :

sudo apt update
sudo apt install -y python3.10-venv

Maintenant, créez un environnement virtuel dans votre répertoire courant (/home/labex/project) :

python3 -m venv my_venv

Cette commande crée un répertoire nommé my_venv contenant les fichiers de l'environnement virtuel.

Maintenant, activez l'environnement virtuel :

source my_venv/bin/activate
Terminal showing activated venv

Vous remarquerez que votre invite de terminal change pour indiquer que l'environnement virtuel est actif (par exemple, (my_venv) labex:project/ $).

Désactiver l'environnement virtuel

Désactiver un environnement virtuel est simple. Utilisez simplement la commande deactivate.

Dans votre terminal, tapez :

deactivate

Après avoir exécuté cette commande, votre invite de terminal reviendra à son état d'origine, indiquant que l'environnement virtuel n'est plus actif.

Vérification :

Pour confirmer que l'environnement virtuel est désactivé, vous pouvez vérifier la commande which python.

which python
/usr/bin/python

Si l'environnement virtuel est désactivé, le chemin d'accès doit pointer vers l'installation Python du système, et non vers celle de l'environnement virtuel.

Basculer entre les projets

L'une des principales raisons d'utiliser des environnements virtuels est de pouvoir basculer facilement entre différents projets ayant des dépendances différentes.

Simulons ce scénario. Supposons que vous ayez deux projets, project_a et project_b, chacun avec son propre environnement virtuel.

Tout d'abord, créons un répertoire pour project_a et son environnement virtuel.

mkdir project_a
cd project_a
python3 -m venv venv_a

Maintenant, activez l'environnement virtuel pour project_a :

source venv_a/bin/activate

Vous devriez voir (venv_a) dans votre invite de terminal.

Maintenant, créons un répertoire pour project_b et son environnement virtuel. Tout d'abord, désactivez l'environnement actuel et revenez au répertoire racine du projet.

deactivate
cd ..
mkdir project_b
cd project_b
python3 -m venv venv_b

Maintenant, activez l'environnement virtuel pour project_b :

source venv_b/bin/activate

Vous devriez voir (venv_b) dans votre invite de terminal.

En suivant ce modèle de désactivation de l'environnement actuel, puis d'activation de l'environnement souhaité, vous pouvez basculer de manière transparente entre les projets sans aucun conflit de dépendances.

Nettoyage

Pour nettoyer les environnements virtuels créés au cours de ce labo, vous pouvez simplement supprimer les répertoires.

Tout d'abord, assurez-vous de ne pas être à l'intérieur d'un environnement virtuel. Si vous voyez un nom d'environnement virtuel dans votre invite (comme (venv_b)), désactivez-le :

deactivate

Maintenant, revenez au répertoire principal du projet si vous n'y êtes pas déjà :

cd /home/labex/project

Enfin, supprimez les répertoires d'environnement virtuel :

rm -rf my_venv project_a project_b

Cette commande supprimera les répertoires my_venv, project_a et project_b et leur contenu, y compris les environnements virtuels.

Résumé

Dans ce labo, vous avez appris à désactiver un environnement virtuel Python à l'aide de la commande deactivate. Vous avez également exploré l'importance des environnements virtuels pour la gestion des dépendances de projet et comment basculer efficacement entre différents environnements de projet. Cette compétence est essentielle pour maintenir un flux de travail de développement propre et organisé.