В чем смысл использования виртуальных сред? Основное преимущество заключается в том, что вы можете установить один и тот же пакет с разными версиями на одном компьютере/сервере.
Это полезно, если у вас есть куча проектов с одинаковыми пакетами, но работающими с разными их версиями. Кроме того, 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.
Создание среды condaconda 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