Виртуальное окружение venv, его создание и использование

Виртуальное окружение — это инструмент, который позволяет изолировать пакеты, установленные для определённого проекта, от глобальных пакетов Python. Это особенно полезно, если вы работаете над несколькими проектами, которые требуют разных версий одних и тех же библиотек.

 

1. Зачем нужно виртуальное окружение?

При разработке на Python часто возникает необходимость использовать сторонние библиотеки и модули. Однако бывает, что разные проекты требуют разные версии этих библиотек. Установка всех пакетов глобально может вызвать конфликты версий.

Используя виртуальное окружение, вы можете:

  • Изолировать зависимости одного проекта от другого.
  • Использовать разные версии Python и библиотек для различных проектов.
  • Поддерживать чистоту глобальной среды Python.

2. Создание виртуального окружения

Создание виртуального окружения в Python выполняется с помощью модуля venv, который встроен в стандартную библиотеку Python, начиная с версии 3.3.

Шаг 1: Переход в нужную директорию

Для начала, откройте VS Code и перейдите в директорию вашего проекта. Вы можете использовать встроенный терминал VS Code или отдельный терминал вашей системы. Для открытия терминала нажмите сочетание ctrl + `  , (где русская Ё), далее вам нужно перейти в поле ввода внутри терминала и выбрать то, в какой папке вы хотите создавать вирутальное окружение, если вы хотите создать виртуальное окружение в текущей папке, то пропустите этот шаг. Вообще вы можете заранее зайти в нужную папку и в ней просто открыть терминал, но мы рассмотрим ситуацию, когда нам нужно перейти в нужную директорию, используя встроенные команды терминала: команда cd < имя_вашей_директории> как раз таки позволит вам перейти в нужную вам категорию.



Шаг 2: Команда для создания виртуального окружения

Для создания виртуального окружения выполните следующую команду:

python -m venv venv

Здесь:

  • python — это команда для вызова интерпретатора Python.
  • -m venv — указывает на использование модуля для создания виртуального окружения.
  • venv — это имя папки, в которой будет храниться ваше виртуальное окружение. Вы можете назвать её как угодно, но часто используют именно это имя.


После выполнения этой команды в директории вашего проекта появится новая папка venv, которая содержит все файлы и библиотеки, необходимые для работы виртуального окружения.


3. Активация виртуального окружения

После создания виртуального окружения, его нужно активировать. Но не забудьте, что вы должны находится при активации в одной директории с venv (в одной папке). В моём примере я активирую venv в папке Project1, так-как именно там хранится наша папка venv

Для Windows команда:

.\venv\Scripts\activate

Для macOS/Linux команда:

source venv/bin/activate


Теперь, когда виртуальное окружение активно, все библиотеки, которые вы будете устанавливать, будут установлены в это окружение, а не глобально. Чтобы убедиться, что вы работаете в виртуальной среде, введите:

pip list

Вы увидите список стандартных библиотек, установленных по умолчанию в виртуальной среде.

3.1 Самая распространённая ошибка при ручном запуске venv:

В этой системе отключено использование сценариев...

Что делать?
Если в системе отключено использование сценариев venv, можно попробовать следующие решения:

  • Проверить параметр политики выполнения. Для этого запустите команду get-executionpolicy в PowerShell. Если получен результат ограничение, это означает, что скрипты не могут запускаться. 

  • Снять ограничения. Для этого можно запустить команду set-executionpolicy remotesigned (предпочтительнее) или set-executionpolicy unrestricted (если вы работаете от имени администратора). 

  • Использовать другой терминал. Можно попробовать установить cmd в качестве терминала по умолчанию вместо PowerShell. 

  • Не запускать файл venv\Scripts\activate или venv\Scripts\activate.bat. Вместо этого следует использовать файл venv\Scripts\activate.ps1. 

Самые лучшие решения:

запустить команду set-executionpolicy remotesigned в командной строке windows или запускать venv через команду
venv\Scripts\activate.ps1 
 


4. Установка пакетов в виртуальное окружение

После активации виртуального окружения можно устанавливать любые пакеты, необходимые для вашего проекта. Например, если вам нужно установить библиотеку requests, вы можете сделать это так:

pip install requests	


5. Деактивация виртуального окружения

Когда вы закончите работу с проектом, вы можете деактивировать виртуальное окружение, чтобы вернуться к глобальному интерпретатору Python. Для этого просто выполните команду:

deactivate

!!! Ваше виртуальное окружение итак базово отключено при заходе в директорию с проектом, поэтому не забывайте, что активировать виртуальное окружение вам придется постоянно при работе над каким либо проектом, и для того, чтобы не утомляться при постоянном вводе одних и тех же команд, вы можете нажать на клавиатуре на стрелочку вверх для прокрутки ранее используемых команд, стрелочка вниз так же может помочь вам найти команду если вы её случайно прокрутили.


6. Удаление виртуального окружения

Если вам больше не нужно виртуальное окружение, вы можете просто удалить папку venv из вашего проекта. Это полностью очистит все установленные пакеты и зависимости для этого окружения.


Что имеем?

Виртуальное окружение — это один из самых полезных инструментов для работы с Python, который помогает организовать и изолировать зависимости ваших проектов. Благодаря его использованию вы сможете избежать конфликтов между различными библиотеками и поддерживать чистоту в своей рабочей среде. В следующей лекции мы рассмотрим то, как нам устанавливать разные пакеты(модули) для более серьёзной работы над программами.

Перейти к следующему шагу

Комментарии