В корне своем, главная задача виртуальной среды Python – создание изолированной среды для проектов Python.
К примеру, вам нужен отличный от установленного python или какие-либо библиотеки отличных версий, вы можете создать общее окружение для нескольких проектов или по одному для каждого проекта. Тем самым вы сможете устанавливать, изменять и удалять пакеты, и это не повлияет на другие ваши проекты или системное окружение.
Для всей этой идее нам потребуется утилита Virtualenv .
уСТАНОВКА ЧЕРЕЗ pyPI .
$ sudo pip install virtualenv
$ sudo easy_install virtualenv
уСТАНОВКА В dEBIAN\uBUNTU .
$ apt-get install python-virtualenv
Давайте теперь создадим общее окружение (для нескольких проектов) без использования системного site-packages :
$ mkdir /home/testvenv
$ cd /home/testvenv
$ virtualenv --no-site-packages myenvironment

—no-site-packages Запретить использование системного site-packages (для полной изоляции вашего окружения от системы). Например у вас в системе установлена Django, если вы будете использовать эту опцию, то в созданном окружении эта Django не будет доступна.
Заметьте, версия Питона в окружение 2.7 , это версия стояла по умолчанию в системе.
$ which python
/usr/bin/python
Что бы установить конкретную версию используем параметр —python=пусть , версия должна быть установлена в системе :
$ python3 -V
Python 3.5.3
$ which python3
$ virtualenv myenvironment1 --python=/usr/bin/python3
Работа с окружением.
Для начала работы вам следует активировать окружение :
$ source /home/testvenv/myenvironment/bin/activate
(myenvironment) root@root:/home/testvenv#
Установка пакетов в окружение :
(myenvironment) root@root:/home/testvenv# pip install numpy

Для окончания работы с окружением следует выполнить в командной строке:
deactivate
Для очистки существующего окружения от пакетов и прочих изменений.
$ virtualenv myenvironment --clear
Running virtualenv with interpreter /usr/bin/python2
Deleting tree /home/testvenv/myenvironment/lib/python2.7
Not deleting /home/testvenv/myenvironment/bin
New python executable in /home/testvenv/myenvironment/bin/python2
Not overwriting existing python script /home/testvenv/myenvironment/bin/python (you must use /home/testvenv/myenvironment/bin/python2)
Installing setuptools, pkg_resources, pip, wheel...done.
В целом это все, дополнительную информацию смотрите командой man virtualenv
.