В чем смысл использования виртуальных сред? Основное преимущество заключается в том, что вы можете установить один и тот же пакет с разными версиями на одном компьютере/сервере.

Это полезно, если у вас есть куча проектов с одинаковыми пакетами, но работающими с разными их версиями. Кроме того, venv может находиться в любой папке, которую вы хотите, чтобы использовать python env, нам нужна любая версия python 3.

Прежде всего, мы собираемся отделить команду Windows от команд Linux, используя (W) для Windows и (L) для Linux.

Теперь нам нужно убедиться, что у нас установлен пакет virtualenv: pip3 install virtualenv

Создание продавца

Перейдите в свой терминал
Измените каталог на папку вашего окружения cd name_of_env
(W):python -m venv name_of_env
(L) :virtualenv name_of_env

Это создаст venv в выбранной папке
Теперь, чтобы получить доступ к venv или, скорее, активировать его:

(W): execute name_of_env/Scripts/activate.bat
(L):
source name_of_env/bin/activate

Чтобы убедиться, что мы находимся в venv, мы можем увидеть терминал, что у нас есть имя env в начале строки или сделать:

(W): where python
(L):
which python

Это покажет, где выполняется python, и это должно быть в нашей среде.

Теперь, если вы выполните pip list, вы увидите, что в нашей среде не так много установлено, но в этом и был смысл всего этого 😄

Если вам нужны текущие пакеты, которые у вас есть в вашей среде, вы можете выполнить pip freeze, а если вы дикий, вы можете сделать pip freeze > requirements.txt, который сохранит вывод терминала в этот файл, чтобы вы могли иметь ту же версию пакетов
Чтобы установить пакеты в другую среду или машину, вы можете взять этот файл и выполнить
pip install -r requirements.txt

Не рекомендуется помещать файлы в ваш venv, поэтому, когда вы его используете, вы должны создать папку проекта, а затем специальную папку venv, чтобы виртуальный env был в project_name/venv

Деактивация и удаление env

Чтобы деактивировать venv

(W): execute deactivate
(L):
deactivate

Чтобы удалить окружение, нам нужно только удалить папку, в которой находится окружение:

(W): rmdir folder_name /s
(L):
deactivate rm -rf folder_name

Бонус за создание anaconda env

Conda — это набор фреймворков и библиотек, которые мы также можем использовать для создания env.

Создание среды conda
conda create -n name_of_env python=3.6

Как видите, одним из преимуществ, которые дает conda, является возможность выбора версии python.

Чтобы активировать окружение:
conda activate name_of_env

Чтобы просмотреть все окружения:
conda deactivate name_of_env

Чтобы удалить среду conda:
conda env remove -n name_of_env

Вот и все! если у вас есть вопросы или вы нашли ошибку, напишите мне в твиттере @ramgendeploy