Найти тему
python-book

Настройка виртуальной среды в Python (Windows)

Оглавление

Доброго времени суток! В этой статье я покажу как настраивать виртуальную среду (virtual environment) в Python.

Зачем нужна виртуальная среда?

Обычно пакеты модулей для python, установленные с помощью pip хранятся в дочернем каталоге с самим Python. Виртуальная среда же позволяет установить определенные библиотеки для каждого проекта, либо же одинаковые библиотеки, но разных версий для разных проектов.

А если проект имеет зависимость от определенной библиотеки, то Python не сможет определить в чём конкретно проблема, так как это большая проблема Python, он не может различать версии в каталоге "site-packages", в котором и хранятся все библиотеки, разные версии библиотеки будут храниться в каталоге под одним и тем же названием.

Что такое виртуальная среда?

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

Установка и использование виртуальной среды.

Возможно для начала использования виртуальной среды нужно будет её установить с помощью pip.

pip install virtualenv

Но если вы используете Python 3, то у вас уже должен быть установлен по умолчанию модуль venv.

Рассмотрим использование виртуальной среды на примере модуля venv.

Создадим каталог с нашим проектом

Проводник Windows
Проводник Windows

Далее используем консоль для создания виртуальной среды, я использую консоль сразу в IDE Visual Studio Code, так как для меня это удобнее, можно перейти к проекту сразу после создания виртуальной среды.

Консоль
Консоль

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

py -m venv [название папки виртуальной среды]
или
python3 -m venv [название папки виртуальной среды]

Обычно я использую название .venv или env

После успешного выполнения команды в каталоге создается каталог виртуальной среды

Новый каталог
Новый каталог

В каталоге Scripts есть скрипты для активации виртуальной среды, то что нам нужно на данном этапе, теперь будем активировать виртуальную среду с помощью этого скрипта

Консоль
Консоль

Наглядно видно, что виртуальная среда активирована, для деактивации применяется команда deactivate

Консоль
Консоль

Также для экспорта проекта можно создать файл со списком зависимостей проекта.

Для примера я установил библиотеки Flask и PyTelegramBotAPI, после этого командой pip freeze > requirements.txt экспортировал все зависимости в файл

VS Code
VS Code

Вот так выглядит содержимое файла

При переносе проекта например на другой ПК из этого списка мы сможем установить все зависимости при помощи pip

pip install -r requirements.txt

На этом всё, спасибо за прочтение статьи, можете подписаться на мой канал и поставить лайк статье, не болейте!