- À propos de la suppression et de la recréation d'un environnement virtuel Python
- Pourquoi supprimer et recréer un environnement virtuel ?
- Sauvegarder les dépendances avant de supprimer l'environnement
- Désactiver l'environnement virtuel avant sa suppression
- Supprimer un environnement virtuel sous Windows
- Supprimer un environnement virtuel sous Linux et macOS
- Recréer un nouvel environnement virtuel avec venv
- Réinstaller les dépendances avec requirements.txt
- Vérifier le nouvel environnement virtuel
- À retenir !
1. À propos de la suppression et de la recréation d'un environnement virtuel Python
Un environnement virtuel Python est un environnement isolé contenant son propre interpréteur Python et les packages nécessaires à un projet. Il est généralement créé avec le module venv et stocké dans un dossier portant un nom tel que .venv, venv ou env.
Contrairement aux fichiers sources du projet, le dossier de l'environnement virtuel est généralement considéré comme recréable. Lorsqu'un environnement devient incorrect, contient trop de packages inutiles, utilise une mauvaise version de Python ou présente des problèmes de dépendances, il est souvent plus simple de le supprimer puis de le reconstruire proprement.
Le programme suivant permet de connaître l'interpréteur Python actuellement utilisé et de déterminer si Python fonctionne dans un environnement virtuel.
1 2 3 4 5 6 | import sys print("Interpréteur :", sys.executable) print("Préfixe courant :", sys.prefix) print("Préfixe de base :", sys.base_prefix) print("Environnement virtuel :", sys.prefix != sys.base_prefix) |
Sortie possible :
1 2 3 4 | Interpréteur : C:\mon_projet\.venv\Scripts\python.exe Préfixe courant : C:\mon_projet\.venv Préfixe de base : C:\Python314 Environnement virtuel : True |
Lorsque sys.prefix et sys.base_prefix sont différents, le programme est généralement exécuté depuis un environnement virtuel créé avec venv.
2. Pourquoi supprimer et recréer un environnement virtuel ?
Un environnement virtuel peut être supprimé et recréé pour de nombreuses raisons. Cette opération est notamment utile lorsque les dépendances sont devenues incohérentes, lorsqu'un grand nombre de packages inutiles ont été installés ou lorsqu'on souhaite repartir d'un environnement propre.
La commande suivante permet d'afficher les packages actuellement installés dans l'environnement actif avant de décider de le reconstruire.
1 | python -m pip list |
Sortie possible :
1 2 3 4 5 6 7 8 9 10 | Package Version ------------------ ------- certifi 2025.8.3 charset-normalizer 3.4.3 Flask 3.1.2 idna 3.10 numpy 2.3.3 pip 25.2 requests 2.32.5 urllib3 2.5.0 |
Si l'environnement contient de nombreux packages qui ne sont plus nécessaires au projet, sa recréation peut être plus simple que la désinstallation manuelle de chaque package.
La commande pip check permet également de rechercher certains problèmes de dépendances dans l'environnement courant.
1 | python -m pip check |
Sortie possible :
1 | No broken requirements found. |
Si pip signale des dépendances incompatibles, il peut être intéressant de reconstruire l'environnement à partir d'un fichier requirements.txt correctement défini.
3. Sauvegarder les dépendances avant de supprimer l'environnement
Avant de supprimer un environnement virtuel contenant des packages utiles, il est important de conserver la liste des dépendances nécessaires au projet. La commande pip freeze permet d'afficher les distributions installées dans un format exploitable par pip.
La commande suivante affiche les packages de l'environnement actif avec leurs versions.
1 | python -m pip freeze |
Sortie possible :
1 2 3 4 5 6 7 | certifi==2025.8.3 charset-normalizer==3.4.3 Flask==3.1.2 idna==3.10 numpy==2.3.3 requests==2.32.5 urllib3==2.5.0 |
Nous pouvons enregistrer automatiquement cette liste dans un fichier requirements.txt grâce à la redirection > du terminal.
1 | python -m pip freeze > requirements.txt |
Sortie :
1 2 | Aucun message n'est normalement affiché. Le fichier requirements.txt est créé ou remplacé. |
Sous Windows, nous pouvons vérifier le contenu du fichier avec la commande suivante.
1 | type requirements.txt |
Sortie possible :
1 2 3 4 5 6 7 | certifi==2025.8.3 charset-normalizer==3.4.3 Flask==3.1.2 idna==3.10 numpy==2.3.3 requests==2.32.5 urllib3==2.5.0 |
Il est important d'effectuer cette sauvegarde avant la suppression du dossier .venv lorsque nous souhaitons reconstruire le même ensemble de dépendances.
4. Désactiver l'environnement virtuel avant sa suppression
Si l'environnement virtuel est actuellement activé dans le terminal, il est préférable de le désactiver avant de supprimer son dossier. La commande deactivate permet de quitter l'environnement actif sous Windows, Linux et macOS.
Supposons que l'invite de commandes indique que l'environnement .venv est actuellement actif. La commande suivante permet de le désactiver.
1 | deactivate |
Sortie possible :
1 2 3 4 5 | Avant : (.venv) C:\mon_projet> Après : C:\mon_projet> |
La disparition de (.venv) dans l'invite du terminal indique que l'environnement n'est plus activé dans cette session.
Nous pouvons ensuite vérifier quel interpréteur est utilisé avec la commande suivante.
1 | python -c "import sys; print(sys.executable)" |
Sortie possible :
1 | C:\Python314\python.exe |
Le chemin ne pointe plus vers .venv\Scripts\python.exe, ce qui confirme que l'interpréteur de l'environnement virtuel n'est plus utilisé par cette commande.
5. Supprimer un environnement virtuel sous Windows
Un environnement créé avec venv est essentiellement représenté par son dossier. Pour le supprimer, il suffit donc de supprimer ce dossier. Avant toute opération, il faut vérifier que le nom indiqué correspond bien au dossier de l'environnement virtuel et non au dossier contenant le projet lui-même.
Suppression avec CMD
Dans l'invite de commandes Windows, si l'environnement est stocké dans un dossier nommé .venv, la commande suivante supprime ce dossier et tout son contenu.
1 | rmdir /s /q .venv |
Sortie possible :
1 | Aucun message n'est normalement affiché si la suppression réussit. |
Suppression avec PowerShell
Avec PowerShell, la commande Remove-Item peut supprimer récursivement le dossier de l'environnement virtuel.
1 | Remove-Item -Recurse -Force .venv |
Sortie possible :
1 | Aucun message n'est normalement affiché si la suppression réussit. |
Après la suppression, nous pouvons vérifier dans CMD que le dossier .venv n'existe plus.
1 | if exist .venv (echo .venv existe) else (echo .venv a ete supprime) |
Sortie possible :
1 | .venv a ete supprime |
La suppression du dossier .venv ne supprime pas les fichiers sources du projet, à condition que ceux-ci soient bien stockés en dehors de ce dossier.
6. Supprimer un environnement virtuel sous Linux et macOS
Sous Linux et macOS, un environnement virtuel peut également être supprimé en supprimant simplement son dossier. Il faut là encore vérifier attentivement le chemin avant d'exécuter une commande de suppression récursive.
Si l'environnement est nommé .venv et se trouve dans le dossier courant, la commande suivante permet de le supprimer.
1 | rm -rf .venv |
Sortie possible :
1 | Aucun message n'est normalement affiché si la suppression réussit. |
Nous pouvons ensuite vérifier si le dossier existe toujours avec la commande suivante.
1 | test -d .venv && echo ".venv existe" || echo ".venv a été supprimé" |
Sortie possible :
1 | .venv a été supprimé |
La commande rm -rf étant récursive et ne demandant normalement pas de confirmation pour chaque fichier, il est indispensable de vérifier le nom du dossier avant son exécution.
7. Recréer un nouvel environnement virtuel avec venv
Une fois l'ancien environnement supprimé, nous pouvons en créer un nouveau avec le module venv fourni avec Python. Il est recommandé d'exécuter la commande depuis le dossier du projet.
La commande suivante crée un nouvel environnement virtuel dans un dossier nommé .venv.
1 | python -m venv .venv |
Sortie :
1 2 | Aucun message n'est généralement affiché. Le dossier .venv est créé. |
Sous Windows avec CMD, le nouvel environnement peut ensuite être activé avec la commande suivante.
1 | .venv\Scripts\activate.bat |
Sortie possible :
1 | (.venv) C:\mon_projet> |
Sous Windows PowerShell, nous utilisons le script Activate.ps1.
1 | .venv\Scripts\Activate.ps1 |
Sortie possible :
1 | (.venv) PS C:\mon_projet> |
Sous Linux ou macOS, la commande suivante active le nouvel environnement.
1 | source .venv/bin/activate |
Sortie possible :
1 | (.venv) utilisateur@ordinateur:~/mon_projet$ |
Nous disposons maintenant d'un nouvel environnement virtuel indépendant de celui qui vient d'être supprimé.
8. Réinstaller les dépendances avec requirements.txt
Le nouvel environnement ne contient pas automatiquement tous les packages qui étaient présents dans l'ancien. Si nous avons sauvegardé les dépendances dans requirements.txt, nous pouvons les réinstaller avec une seule commande pip.
Après activation du nouvel environnement, la commande suivante installe les dépendances déclarées dans requirements.txt.
1 | python -m pip install -r requirements.txt |
Sortie possible :
1 2 3 4 5 | Collecting Flask==3.1.2 Collecting numpy==2.3.3 Collecting requests==2.32.5 ... Successfully installed Flask-3.1.2 numpy-2.3.3 requests-2.32.5 ... |
Après l'installation, pip list permet de vérifier les packages disponibles dans le nouvel environnement.
1 | python -m pip list |
Sortie possible :
1 2 3 4 5 6 7 | Package Version ------------------ ------- Flask 3.1.2 numpy 2.3.3 pip 25.2 requests 2.32.5 ... |
Nous pouvons également comparer l'état actuel de l'environnement avec les dépendances enregistrées en exécutant pip freeze.
1 | python -m pip freeze |
Sortie possible :
1 2 3 4 5 6 7 | certifi==2025.8.3 charset-normalizer==3.4.3 Flask==3.1.2 idna==3.10 numpy==2.3.3 requests==2.32.5 urllib3==2.5.0 |
Le nouvel environnement peut ainsi retrouver les dépendances enregistrées sans qu'il soit nécessaire de conserver ou de copier l'ancien dossier .venv.
9. Vérifier le nouvel environnement virtuel
Après avoir recréé l'environnement et réinstallé ses dépendances, il est conseillé de vérifier que la commande python utilise bien l'interpréteur du nouveau dossier .venv.
Le programme suivant affiche le chemin de l'interpréteur et vérifie si l'exécution s'effectue dans un environnement virtuel.
1 2 3 4 | import sys print("Interpréteur :", sys.executable) print("Environnement virtuel :", sys.prefix != sys.base_prefix) |
Sortie possible :
1 2 | Interpréteur : C:\mon_projet\.venv\Scripts\python.exe Environnement virtuel : True |
Nous pouvons ensuite demander à pip de vérifier si les dépendances installées présentent des incompatibilités connues par son analyse des métadonnées.
1 | python -m pip check |
Sortie possible :
1 | No broken requirements found. |
Enfin, il est recommandé d'exécuter le programme principal ou les tests du projet. Dans l'exemple suivant, nous supposons que l'application possède un fichier main.py.
1 | python main.py |
Sortie possible :
1 | Application démarrée avec succès. |
La recréation est réellement validée lorsque le projet fonctionne correctement avec le nouvel environnement et les dépendances réinstallées.
10. À retenir !
La suppression puis la recréation d'un environnement virtuel Python constitue une opération courante pour repartir d'un environnement propre. Un environnement créé avec venv étant recréable, il est généralement inutile de conserver ou de transférer son dossier lorsque les dépendances du projet sont correctement documentées.
- Un environnement virtuel est souvent placé dans un dossier nommé .venv, venv ou env.
- Avant de le supprimer, il faut identifier avec certitude le dossier correspondant à l'environnement.
- python -m pip freeze > requirements.txt permet de sauvegarder l'état des packages installés avant la suppression.
- deactivate permet de désactiver l'environnement actuellement actif.
- Sous Windows CMD, rmdir /s /q .venv permet de supprimer le dossier .venv.
- Sous PowerShell, Remove-Item -Recurse -Force .venv permet de supprimer l'environnement.
- Sous Linux et macOS, rm -rf .venv permet de supprimer le dossier de l'environnement.
- python -m venv .venv permet de créer un nouvel environnement virtuel.
- python -m pip install -r requirements.txt permet de réinstaller les dépendances sauvegardées.
- python -m pip check et l'exécution des tests du projet permettent de vérifier le nouvel environnement.
Le processus suivant résume les principales commandes utilisées sous Windows avec CMD pour sauvegarder les dépendances, désactiver et supprimer l'ancien environnement, puis en créer un nouveau.
1 2 3 4 5 6 7 | python -m pip freeze > requirements.txt deactivate rmdir /s /q .venv python -m venv .venv .venv\Scripts\activate.bat python -m pip install -r requirements.txt python -m pip check |
Sortie possible :
1 2 | Successfully installed Flask-3.1.2 numpy-2.3.3 requests-2.32.5 ... No broken requirements found. |
Sous Linux ou macOS, le principe est identique mais les commandes de suppression et d'activation sont adaptées au système.
1 2 3 4 5 6 7 | python3 -m pip freeze > requirements.txt deactivate rm -rf .venv python3 -m venv .venv source .venv/bin/activate python -m pip install -r requirements.txt python -m pip check |
Sortie possible :
1 2 | Successfully installed Flask-3.1.2 numpy-2.3.3 requests-2.32.5 ... No broken requirements found. |
Auteur : Younes Derfoufi
Lieu de travail : CRMEF OUJDA
Site Web : www.tresfacile.net
Chaine YouTube : https://www.youtube.com/user/InformatiquesFacile
Me contacter : https://www.tresfacile.net/me-contacter/


