• Информация на сайте предоставляется «как есть», может содержать неточности и не является консультацией или офертой.
  • Перед использованием проконсультируйтесь со специалистом.

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

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

Настройки cookies
Необходимые для работы веб-сайта

Используются для входа, навигации и защиты (например: sessionid, csrftoken). Без них сайт может работать с перебоями.

Помогают улучшить сайт, собирая статистику посещений (например, через Яндекс Метрику).

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

Настройки интерфейса

Декоративный эффект свечения при клике по странице.

DEV -
PROGRAM.RU
Контакты

Как создать виртуальное окружение python venv

Узнаем что такое venv в Python, как работать на Windows, Linux, MacOs, в Pycharm и VS Code и как решать ошибки в работе.

python_venv_activate_show

Что такое venv в python

Venv это встроенный модуль языка программирования python.

Расшифровывается как «virtual environments», то есть виртуальное окружение, некая изолированная среда.

Для чего нужен venv

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

Что делает venv

Модуль venv защищает Python проект от внешних зависимостей, через следующие действия:

  • копирует python интерпретатор или оставляет ссылку на него

  • перенаправляет переменные среды, чтобы введенные команды (например python или pip) искали библиотеки внутри созданного окружения

  • задает установку библиотек в папку действующего окружения

Как установить venv

На современных версиях питона, venv обычно идет в комплекте.

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

sudo apt install python3-venv

Команда установки для Debian / Ubuntu

Virtualenv альтернатива venv, подходит и для версий Python ниже 3.3

pip3 install virtualenv

Команда установки для MacOS

pip install virtualenv

Команда установки для Windows

Как создать папку venv

Сделать venv, то есть виртуальное окружение, в вашем проекте достаточно просто, хватит одной команды.

Заместо папки .venv можно указать любое свое название папки латинскими буквами и цифрами без пробелов (например project_venv), однако внутри будущих команд вам потребуется вписывать это название.

Использовать в качестве названия папки - .venv может быть удобно, так как зачастую в.gitignore уже присутствует такое название.

 python -m venv .venv

Создание venv на Windows

 python3 -m venv .venv

Создание venv на Linux/MacOS

На выходе получаем файлы и папки, среди которых отдельно отметим папки:

  • bin/ куда кладутся файлы для запуска питона

  • site-packages/ куда будут установленные сторонние библиотеки

.venv/
├── папка для запуска питона/  - (bin/ на Linux/Mac) или (Scripts/ на Windows)
│   ├── python    - копия/симлинк (ссылка) интерпретатора Python
│   ├── pip       - pip (для установки библиотек из вне)
│   └── activate  - скрипт для включения окружения
├── lib/
│   └── python3.x/ - такой промежуточной папки может не быть, например на Windows
│       └── site-packages/  - здесь будут библиотеки установленные через pip
├── pyvenv.cfg - настройка окружения

Пример структуры папок venv

Как активировать venv в python

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

.venv\Scripts\activate

команда включения venv на Windows

source .venv/bin/activate

команда включения venv на Linux и Macos

Как убедиться что venv работает

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

как выглядит активное окружение python venv в скобочках

Как выйти из окружения venv

Чтобы выйти из venv, то есть отключить его функции, пишем команду ниже:

deactivate

команда отключения venv Windows / Linux / Macos

Как удалить виртуальное окружение python venv

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

Как создать venv в vs code

Убедитесь, что у вас стоит расширение python.

Откройте Extensions (Расширения) зажав (Ctrl+Shift+X), проверьте установлен ли Python от Microsoft.

Зажмите Ctrl+Shift+P (или Cmd+Shift+P на MacOS) и введите Python: Create Environment.

  1. выберите модуль venv

  2. выберите папку

  3. выберите Custom (Настраиваемый) и выбрате версию питона

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

  5. выберите Skip (Пропустить установку пакета)

Как создать venv в pycharm

При создании проекта в pycharm можно выбрать вкладку Custom enviroment (настраиваемое окружение).

Следовательно там можно выбрать тип (virtualenv), версию питона и путь к виртуальному окружению, которое будет создано.

Если это уже действующий проект, требуется сделать следующий ряд действий:

  1. пойти в Settings (настройки)

  2. выбрать Project (проект)

  3. нажать Python Interpreter (интерпретатор питона)

  4. нажать add interpreter (добавить интерпретатор)

  5. нажать add local interpeter (нажать добавить локальный интерпретатор)

  6. выбрать generate new (создать новый), тип Virtualenv, выбрать питон и путь куда требуется поместить окружение, далее нажать ок

Какие есть альтернативы venv

У venv есть как достоинства так и недостатки, разработчики создают свои аналоги чтобы было удобнее работать и меньше времени тратить на установку библиотек.

Так появились conda, pipenv, poetry и uv.

Идеальной замены у venv до сих пор нет, потому многие остаются преданными именно этому инструменту.

Не работает venv

На первых парах, вы можете столкнуться с проблемами установки или запуска venv, это нормально, ниже мы рассмотрим некоторые проблемы и их решение:

Venv scripts activate ошибка безопасности

Такая ошибка может появится в powershell (терминал от Windows).

Для ее решения можно попробовать ввести следующую команду или производить запуск через CMD терминал.

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Команда: Разрешаем запуск локальных скриптов текущему пользователю

Ошибка на linux

error: externally-managed-environment × this environment is externally managed ╰─> to install python packages system-wide, try apt install python3-xyz, where xyz is the package you are trying to install. if you wish to install a non-debian-packaged python package, create a virtual environment using python3 -m venv path/to/venv. then use path/to/venv/bin/python and path/to/venv/bin/pip. make sure yo

пример ошибки python Linux

warning: running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager, possibly rendering your system unusable. it is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv. use the --root-user-action option if you know what you are doing and want to suppress this warning.

пример ошибки python Linux

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

Ничего не помогает

Если ничего из вышеперечисленного не помогает, вы можете обратиться за консультацией к программисту.

Вам может быть интересно

Поделиться
Ничего не найдено
Найдите нужную страницу

Статьи, инструменты и помощь