Ceci est une ancienne révision du document !
Table des matières
Python: Virtualenv
Niveau Pro
Virtualenv
virtualenv est un outil pour créer un environnement Python isolé.
The basic problem being addressed is one of dependencies and versions, and indirectly permissions. Imagine you have an application that needs version 1 of LibFoo, but another application requires version 2. How can you use both these applications? If you install everything into /usr/lib/python2.7/site-packages (or whatever your platform’s standard location is), it’s easy to end up in a situation where you unintentionally upgrade an application that shouldn’t be upgraded.
Or more generally, what if you want to install an application and leave it be? If an application works, any change in its libraries or the versions of those libraries can break the application.
Also, what if you can’t install packages into the global site-packages directory? For instance, on a shared host.
In all these cases, virtualenv can help you. It creates an environment that has its own installation directories, that doesn’t share libraries with other virtualenv environments (and optionally doesn’t access the globally installed libraries either).
Comment créer un virtualenv ?
Voici la marche à suivre pour créer le « virtualenv ».
Installation
Installe python3-venv python3.5-venv
sudo apt-get install python3-venv
Crée un dossier /home/user/VEnv
Utilisation
python3 -m venv ~/VEnv
1ère solution
source ~/VEnv/bin/activate
équivalent à
source /home/user/VEnv/bin/activate
Le prompt devient:
(VEnv) user@PC01:~$
Installation des modules appelés par votre projet:
pip3 install twisted librosa bs4
2ème solution
Utiliser l’interpréteur installé dans le « virtualenv » :
- ~/VEnv/bin/python` (qui peut être utilisé comme shebang aussi bien sur)
Ressources
Requirement
Ressources
Exemple
- requirements.txt
twisted service_identity google-auth-oauthlib
Dans un terminal, dans le dossier de requirements.txt, installation dans le système:
sudo pip3 install -r requirements.txt