Найти в Дзене
Kabyleti plays

Работа с виртуальным окружением на Python

Для каждого отдельного, серьезного, проекта на Python создаётся своё виртуальное окружение. Для чего это нужно? Некоторые версии библиотек работают только с определенными версиями других библиотек, и часто происходит так, что бы запустить один проект, нужны определенные версии одних библиотек, а что бы запустить другой - другие. Что бы каждый раз по новой не удалять и переустанавливать нужные нам версии библиотек и существует виртуальное окружение. Оно создается под каждый проект, а затем наполняется единожды нужными библиотеками. Сегодня мы с вами разберём как создать виртуальное окружение и научимся базовой работе с ним. Делать это будем в Visual Studio Code (далее VSC). Сейчас мы немного отвлечемся. С чего начинается создание нового проекта? С папки под этот проект. Создадим её! Я, в нашем примере, буду создавать шаблон для телеграм-бота. B yазову эту папку bot_pattern. Затем, что бы создать виртуальное окружение в VSC нужно открыть, эту папку в терминале и ввести команду: python -

Для каждого отдельного, серьезного, проекта на Python создаётся своё виртуальное окружение.

Для чего это нужно?

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

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

Сегодня мы с вами разберём как создать виртуальное окружение и научимся базовой работе с ним. Делать это будем в Visual Studio Code (далее VSC).

Сейчас мы немного отвлечемся. С чего начинается создание нового проекта? С папки под этот проект. Создадим её!

Я, в нашем примере, буду создавать шаблон для телеграм-бота. B yазову эту папку bot_pattern.

Затем, что бы создать виртуальное окружение в VSC нужно открыть, эту папку в терминале и ввести команду: python -m venv venv

Создание виртуального окружения в терминале Visual Studio Code
Создание виртуального окружения в терминале Visual Studio Code

Примечание: вторая venv в этой команде, это название папки с виртуальным окружением. Можно его заменить, например на myenv, тогда команда выглядела бы таким образом: python -m venv myenv

После чего, в папке с нашим проектом появится папка под названием venv. В VSC это будет выглядеть вот так:

Появившаяся папка venv внутри нашего проекта
Появившаяся папка venv внутри нашего проекта

Теперь, после того как вы создали виртуальное окружение, его нужно активировать. Так придется делать каждый раз когда вы захотите запустить данный проект. Для этого в терминале нужно ввести команду: venv\Scripts\activate.ps1

Если у вас вылезла такая ошибка:

Ошибка не дающая активировать виртуальное окружение
Ошибка не дающая активировать виртуальное окружение

Тогда нужно найти в пуске PowerShell, запустить его от администратора и ввести команду: Set-ExecutionPolicy RemoteSigned

На вопрос соглашаемся, вводим Y.

Затем, пробуем повторно активировать виртуальное окружение в VSC, если, все хорошо, то мы увидим появившиеся круглые скобки с venv, перед адресом директории:

Так выглядит успешная активация виртуальной среды.
Так выглядит успешная активация виртуальной среды.

Теперь, можно посмотреть какие библиотеки у нас уже имеются в наличии в нашем проекте. Для этого вводим команду: pip list

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

Сейчас их всего две. Но ничего страшного, мы можем легко через pip install установить новые!

Так как у меня в проекте будет шаблон бота для телеграм, мне понадобится библиотека aiogram, установим её командой: pip install aiogram

Затем, снова смотрим список установленных библиотек и убеждаемся что она хорошо встала:

Видим, что появилась библиотека aiogram, а с ней еще ряд библиотек, необходимых для её работы.
Видим, что появилась библиотека aiogram, а с ней еще ряд библиотек, необходимых для её работы.

Вот, вы и научились создавать, активировать виртуальное окружение и наполнять его библиотеками, но не забываем про деактивацию! После того как вы поработали с проектом, виртуальное окружение необходимо деактивировать. Делается это с помощью команды: deactivate

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

После успешной деактивации круглые скобки с названием папки с виртуальным окружением пропадают. Это можно увидеть на картинке выше.

Проделав всё выше, можно столкнуться с проблемой при запуске программы в VSC, что она будет запускаться не в виртуальном окружении, а в глобальной среде, тогда нажимаем комбинацию: ctrl + Shift + P

В появившемся окне выбираем Python: Выбор интерпретатора (Select Interpretator):

Нажимаем Python: Выбор интерпретатора (Select Interpretator)
Нажимаем Python: Выбор интерпретатора (Select Interpretator)

Затем выбираем наше виртуальное окружение 'venv':

Выбираем виртуальное окружение 'venv'
Выбираем виртуальное окружение 'venv'

После этого запускаться приложение в VSC должно с библиотеками и версией Python из нашего виртуального окружения.