1. Environnements virtuels et packages
Les applications Python utilisent souvent des packages et des modules qui ne font pas partie de la bibliothèque standard. Les applications auront parfois besoin d'une version spécifique d'une bibliothèque, car l'application peut nécessiter la correction d'un bogue particulier ou l'application peut être écrite à l'aide d'une version obsolète de l'interface de la bibliothèque.
Cela signifie qu'il peut être impossible pour une installation Python de répondre aux exigences de chaque application. Si un projet X a besoin de la version 1.0 d'un module particulier mais qu'un autre projet Y a besoin de la version 2.0, les exigences sont en conflit et l'installation de la version 1.0 ou 2.0 empêchera l'exécution d'une application.
La solution à ce problème consiste à créer un environnement virtuel (virtualenv), une arborescence de répertoires autonome contenant une installation Python pour une version particulière de Python, ainsi qu'un certain nombre de packages supplémentaires.
Différentes applications peuvent alors utiliser différents environnements virtuels. Pour résoudre l'exemple précédent d'exigences conflictuelles, le projet X peut avoir son propre environnement virtuel avec la version 1.0 installée tandis que le projet Y a un autre environnement virtuel avec la version 2.0. Si le projet Y nécessite qu'une bibliothèque soit mise à niveau vers la version 3.0, cela n'affectera pas l'environnement du projet X.
2. Avantages d'un environnement virtuel
- Vous pouvez créer un nouvel environnement virtuel pour plusieurs versions de Python
- Vous pouvez télécharger des packages dans votre projet sans privilèges d'administrateur
- Vous pouvez facilement empaqueter votre application et la partager avec d'autres développeurs pour répliquer
- Vous pouvez facilement créer une liste de dépendances et de sous-dépendances dans un fichier, pour votre projet, ce qui permet aux autres développeurs de répliquer et d'installer facilement toutes les dépendances utilisées dans votre environnement.
- L'utilisation d'environnements virtuels est recommandée pour les projets de développement de logiciels qui se développent généralement à partir d'un seul script Python, et Python offre plusieurs façons de créer et d'utiliser un environnement virtuel.
3. Création d'un environnement virtuel sous Linux
Si pip n'est pas intallé dans votre système, veuillez l'installer via le terminal shell en tapant la commande:
1 |
$ sudo apt-get install python-pip |
Installez ensuite le module virtualenv en tapant:
1 |
$ pip install virtualenv |
Vérifiez maintenant votre installation
1 |
$ virtualenv --version |
Créez ensuite un environnement virtuel:
1 |
$ virtualenv my_venv |
Après cette commande, un dossier nommé my_venv sera créé. Si vous souhaitez créer un virtualenv pour une version spécifique de python, tapez:
1 |
$ virtualenv -p/usr/bin/python3 my_venv |
ou
1 |
$ virtualenv -p/usr/bin/python2.7 my_venv |
Maintenant, nous devons enfin l'activer en utilisant la commande
1 |
$ source my_venv/bin/activate |
Vous êtes maintenant dans un environnement virtuel Python
Vous pouvez le désactiver en utilisant
1 |
$ deactivate |
4. Création de Python virtualenv sous Windows
Pour créer un environnement virtuel sous Windows, il suffit de suivre les étapes suivantes:
- Lancez la commande cmd et naviguer jusqu'au répertoire de votre projet via la commande cd
- Installez virtualenv en tapant dans la commande: > pip install virtualenv
- Maintenant, dans quel répertoire que vous soyez, cette ligne ci-dessous créera un virtualenv: > virtualenv my_venv
- Maintenant, si vous êtes dans le même répertoire, activer votre environnement virtuel en tapant: > my_venv\Scripts\activate.bat
- Vous pouvez désactiver votre virtualenv en tapant sur la commande cmd: >deactivate
Younes Derfoufi
CRMEF OUJDA