Python Language Créer un environnement virtuel avec virtualenvwrapper


Exemple

Supposons que vous ayez besoin de travailler sur trois projets différents: le projet A, le projet B et le projet C. le projet A et le projet B nécessitent python 3 et certaines bibliothèques requises. Mais pour le projet C, vous avez besoin de python 2.7 et de bibliothèques dépendantes.

La meilleure pratique consiste donc à séparer ces environnements de projet. Pour créer un environnement virtuel, vous pouvez utiliser la technique ci-dessous:

Virtualenv, Virtualenvwrapper et Conda

Bien que nous ayons plusieurs options pour l'environnement virtuel, virtualenvwrapper est le plus recommandé.

Bien que nous ayons plusieurs options pour l'environnement virtuel mais je préfère toujours virtualenvwrapper car il a plus de facilité que d'autres.

$ pip install virtualenvwrapper

$ export WORKON_HOME=~/Envs
$ mkdir -p $WORKON_HOME
$ source /usr/local/bin/virtualenvwrapper.sh
$ printf '\n%s\n%s\n%s' '# virtualenv' 'export WORKON_HOME=~/virtualenvs' 'source /home/salayhin/bin/virtualenvwrapper.sh' >> ~/.bashrc
$ source ~/.bashrc

$ mkvirtualenv python_3.5
Installing
setuptools..........................................
....................................................
....................................................
...............................done.
virtualenvwrapper.user_scripts Creating /Users/salayhin/Envs/python_3.5/bin/predeactivate
virtualenvwrapper.user_scripts Creating /Users/salayhin/Envs/python_3.5/bin/postdeactivate
virtualenvwrapper.user_scripts Creating /Users/salayhin/Envs/python_3.5/bin/preactivate
virtualenvwrapper.user_scripts Creating /Users/salayhin/Envs/python_3.5/bin/postactivate New python executable in python_3.5/bin/python

(python_3.5)$ ls $WORKON_HOME
python_3.5 hook.log

Maintenant, nous pouvons installer des logiciels dans l'environnement.

(python_3.5)$ pip install django
Downloading/unpacking django
Downloading Django-1.1.1.tar.gz (5.6Mb): 5.6Mb downloaded
Running setup.py egg_info for package django
Installing collected packages: django
Running setup.py install for django
changing mode of build/scripts-2.6/django-admin.py from 644 to 755
changing mode of /Users/salayhin/Envs/env1/bin/django-admin.py to 755
Successfully installed django

Nous pouvons voir le nouveau paquet avec lssitepackages:

(python_3.5)$ lssitepackages
Django-1.1.1-py2.6.egg-info easy-install.pth
setuptools-0.6.10-py2.6.egg pip-0.6.3-py2.6.egg
django setuptools.pth

Nous pouvons créer plusieurs environnements virtuels si nous le souhaitons.

Basculer entre les environnements avec workon:

(python_3.6)$ workon python_3.5
(python_3.5)$ echo $VIRTUAL_ENV
/Users/salayhin/Envs/env1
(python_3.5)$

Pour quitter le virtualenv

$ deactivate