Environnement Virtuel
L’utilisation d’un Environnement Virtuel sert à tester du code Python dans des environnements encapsulés, et également à éviter de remplir l’installation Python de base avec des bibliothèques que nous pourrions n’utiliser que pour un seul projet.
venv
venv est le module de la bibliothèque standard pour créer des environnements virtuels dans Python 3.3+. Il est intégré à Python, donc aucune installation n’est requise.
- Créer un environnement virtuel
python -m venv venv
Ou sur certains systèmes :
python3 -m venv venv
Ceci crée un répertoire venv dans votre dossier actuel contenant l’environnement virtuel.
Connectez-vous pour répondre à ce quiz et suivre votre progression d'apprentissage
venv ?python -m venv venvpython create venvvenv createpython venv new- Activer l’environnement virtuel
Sur Linux/macOS :
source venv/bin/activate
Sur Windows :
venv\Scripts\activate
Une fois activé, vous verrez (venv) au début de votre invite de commande, indiquant que l’environnement virtuel est actif.
Connectez-vous pour répondre à ce quiz et suivre votre progression d'apprentissage
activate venvsource venv/bin/activatevenv activatepython venv activate- Installer des paquets
Avec l’environnement virtuel activé, installez des paquets en utilisant pip :
pip install package_name
Les paquets installés seront spécifiques à cet environnement virtuel.
- Désactiver l’environnement virtuel
Pour quitter l’environnement virtuel :
deactivate
Le préfixe (venv) disparaîtra de votre invite de commande.
Connectez-vous pour répondre à ce quiz et suivre votre progression d'apprentissage
virtualenv
- Installer virtualenv
pip install virtualenv
- Installer virtualenvwrapper-win (Windows)
pip install virtualenvwrapper-win
Utilisation :
- Créer un environnement virtuel nommé
HelloWorld
mkvirtualenv HelloWorld
Tout ce que nous installons maintenant sera spécifique à ce projet. Et disponible pour les projets que nous connectons à cet environnement.
- Définir le répertoire du projet
Pour lier notre virtualenv à notre répertoire de travail actuel, nous entrons simplement :
setprojectdir .
- Désactiver
Pour passer à autre chose dans l’invite de commande, tapez deactivate pour désactiver votre environnement.
deactivate
Remarquez comment les parenthèses disparaissent.
- Travailler sur (Workon)
Ouvrez l’invite de commande et tapez workon HelloWorld pour activer l’environnement et vous déplacer vers le dossier racine de votre projet
workon HelloWorld
Poetry
Du site web de Poetry
Poetry est un outil de gestion des dépendances et de packaging en Python. Il vous permet de déclarer les bibliothèques dont votre projet dépend et il les gérera (installera/mettra à jour) pour vous.
- Installer Poetry
pip install --user poetry
- Créer un nouveau projet
poetry new my-project
Ceci créera un répertoire my-project :
my-project
├── pyproject.toml
├── README.rst
├── poetry_demo
│ └── __init__.py
└── tests
├── __init__.py
└── test_poetry_demo.py
Le fichier pyproject.toml orchestrera votre projet et ses dépendances :
[tool.poetry]
name = "my-project"
version = "0.1.0"
description = ""
authors = ["your name <your@mail.com>"]
[tool.poetry.dependencies]
python = "*"
[tool.poetry.dev-dependencies]
pytest = "^3.4"
- Paquets
Pour ajouter des dépendances à votre projet, vous pouvez les spécifier dans la section tool.poetry.dependencies :
[tool.poetry.dependencies]
pendulum = "^1.4"
Aussi, au lieu de modifier le fichier pyproject.toml à la main, vous pouvez utiliser la commande add et elle trouvera automatiquement une contrainte de version appropriée.
poetry add pendulum
Pour installer les dépendances listées dans pyproject.toml :
poetry install
Pour supprimer des dépendances :
poetry remove pendulum
Pour plus d’informations, consultez la documentation ou lisez ici :
- Projets Python avec Poetry et VSCode. Partie 1
- Projets Python avec Poetry et VSCode. Partie 2
- Projets Python avec Poetry et VSCode. Partie 3
Pipenv
Du site web de Pipenv
Pipenv est un outil qui vise à apporter le meilleur de tous les mondes du packaging (bundler, composer, npm, cargo, yarn, etc.) au monde Python. Windows est un citoyen de première classe, dans notre monde.
- Installer pipenv
pip install pipenv
- Entrez dans le répertoire de votre projet et installez les paquets pour votre projet
cd my_project
pipenv install <package>
Pipenv installera votre paquet et créera un Pipfile pour vous dans le répertoire de votre projet. Le Pipfile est utilisé pour suivre les dépendances dont votre projet a besoin au cas où vous devriez les réinstaller.
- Désinstaller des paquets
pipenv uninstall <package>
- Activer l’environnement virtuel associé à votre projet Python
pipenv shell
- Quitter l’environnement virtuel
exit
Trouvez plus d’informations et une vidéo sur docs.pipenv.org.
Anaconda
Anaconda est un autre outil populaire pour gérer les paquets Python.
Où les paquets, les notebooks, les projets et les environnements sont partagés. Votre lieu pour l'hébergement public gratuit de paquets conda.
Utilisation :
- Créer un environnement virtuel
conda create -n HelloWorld
- Pour utiliser l’environnement virtuel, activez-le par :
conda activate HelloWorld
Tout ce qui est installé maintenant sera spécifique au projet HelloWorld
- Quitter l’environnement virtuel
conda deactivate
UV
De la Documentation UV
UV est un installateur et résolveur de paquets Python extrêmement rapide, conçu comme un remplacement direct pour les flux de travail pip et pip-tools. UV est 10 à 100 fois plus rapide que pip et fournit une gestion unifiée des paquets, la création d'environnements virtuels et la gestion des versions Python.
- Installer UV
# Utilisation de curl (Linux/macOS)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Utilisation de pip ou pipx
pip install uv
- Créer un nouveau projet avec environnement virtuel
uv init my-project
cd my-project
- Ajouter des dépendances
uv add requests
- Exécuter des commandes dans l’environnement du projet
uv run python script.py
- Activer l’environnement virtuel manuellement (optionnel)
source .venv/bin/activate # Linux/macOS
.venv\Scripts\activate # Windows
UV gère automatiquement les environnements virtuels, les versions Python et les dépendances avec une vitesse et une commodité exceptionnelles.