Environnements virtuels Python : venv et isolation des dépendances

Maîtrisez les environnements virtuels Python. Apprenez à créer, activer et gérer des dépendances avec venv et pip en toute sécurité.

Essayez dans l'éditeur

Aperçu

Lorsque vous travaillez sur plusieurs projets Python, vous rencontrerez inévitablement des conflits de dépendances. Le projet A peut nécessiterDjangoversion 3.2, tandis que le projet B nécessiteDjangoversion 5.0. Si vous installez ces packages globalement, ils s'écraseront les uns les autres, interrompant ainsi l'une de vos applications. Les environnements virtuels résolvent ce problème critique en créant des répertoires isolés spécifiques au projet contenant leurs propres installations de binaires et de bibliothèques Python.

Python fournit une prise en charge intégrée des environnements virtuels via le module `venv`. Lorsque vous créez un environnement virtuel, un nouveau dossier est généré contenant une copie de l'interpréteur Python, ainsi que des scripts pour ajuster votre environnement shell. Lorsqu'ils sont activés, tous les packages que vous installez à l'aide de « pip » sont directement acheminés vers ce dossier isolé, laissant votre installation globale de Python propre et non affectée par les bibliothèques spécifiques au projet.

La gestion des environnements virtuels implique trois commandes principales. Tout d'abord, `python -m venv venv` crée le répertoire d'environnement virtuel nommé `venv`. Ensuite, vous activez l'environnement (`source venv/bin/activate` sur macOS/Linux ou `venv\Scripts\activate` sous Windows). Enfin, vous gelez vos dépendances en utilisant `pip freeze > Requirements.txt`, créant ainsi une liste que d'autres développeurs peuvent utiliser pour recréer l'environnement exact. Comprendre les environnements virtuels est une bonne pratique non négociable pour l’ingénierie Python moderne.

Sortie de code et d'exécution

Une maquette illustrant les commandes permettant de créer, d'activer et de générer les exigences du package.

venv_management.py
Essayez dans l'éditeur
# This script prints the commands used to configure a virtual environment
commands = [
    "python -m venv my_env       # Create environment",
    "source my_env/bin/activate  # Activate environment (Mac/Linux)",
    "pip install requests        # Install isolated package",
    "pip freeze > requirements.txt # Export dependency catalog"
]

print("--- Virtual Environment Lifecycle ---")
for index, cmd in enumerate(commands, 1):
    print(f"Step {index}: {cmd}")
Sortie terminale
--- Virtual Environment Lifecycle ---
Step 1: python -m venv my_env       # Create environment
Step 2: source my_env/bin/activate  # Activate environment (Mac/Linux)
Step 3: pip install requests        # Install isolated package
Step 4: pip freeze > requirements.txt # Export dependency catalog

Mise en œuvre étape par étape

  • Isoler les projets d'espace de travail pour éviter le chevauchement des dépendances
  • Configuration d'environnements prévisibles pour les conteneurs Docker
  • Expédition de bases de code reproductibles avec des listes d'exigences.txt

Foire aux questions

Quels dossiers dois-je ignorer dans un projet Python ?

Vous devez toujours ajouter le répertoire de l'environnement virtuel (généralement « venv/ » ou « .venv/ ») à votre fichier .gitignore. Ne vérifiez jamais les dépendances de bibliothèques externes dans git.

Comment désactiver un environnement virtuel ?

Tapez simplement la commande « deactivate » dans la fenêtre de votre terminal et votre shell reviendra à l'environnement Python global.

Sujets connexes

Ressources Python recommandées

Développez vos connaissances avec des didacticiels interactifs, des aide-mémoire et des comparaisons de codes associés.