Найти в Дзене

Как пользоваться виртуальной средой Python venv

Виртуальная среда Python, или виртуальное окружение, позволит использовать модули и зависимости для каждого проекта изолированно друг от друга. В Pycharm (виртуальная среда) создается автоматически. Если вы хотите запустить проект вне Pycharm, к примеру на linux-сервере — вам понадобится активировать виртуальную среду. Иначе в момент загрузки модулей Python будет искать модули установленные глобально в операционной системе, а это в большинстве случаев провально. Для работы с виртуальной средой ее нужно создать и активировать. Если она уже существует (например pycharm ее создал) - ее нужно только активировать. python3 -m venv production-env Где production-env можно поменять на любое название source production-env/bin/activate В случае с Linux в строке с source production-env - это название енвайрмента, а не папки В cmd production-env\Scripts\activate.bat В powershell production-env\Scripts\activate.ps1 Где production-env можно поменять на любое название
В случае с Windows в строке актив
Оглавление

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

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

Зачем нужна виртуальная среда? Мой проект запускается в Pycharm без проблем

В Pycharm (виртуальная среда) создается автоматически. Если вы хотите запустить проект вне Pycharm, к примеру на linux-сервере — вам понадобится активировать виртуальную среду. Иначе в момент загрузки модулей Python будет искать модули установленные глобально в операционной системе, а это в большинстве случаев провально.

Для работы с виртуальной средой ее нужно создать и активировать. Если она уже существует (например pycharm ее создал) - ее нужно только активировать.

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

python3 -m venv production-env

Где production-env можно поменять на любое название

Для активации venv на linux

source production-env/bin/activate

В случае с Linux в строке с source production-env - это название енвайрмента, а не папки

Для активации venv на Windows

В cmd

production-env\Scripts\activate.bat

В powershell

production-env\Scripts\activate.ps1

Где production-env можно поменять на любое название
В случае с Windows в строке активации production-env - это название пути к папке

Сбор зависимостей в файл requirments

python -m pip freeze > requirements.txt

Соберет список модулей с конкретными версиями в файл requirements.txt

Установка зависимостей из requirments

python -m pip install -r requirements.txt

Установит все модули из файла requirements.txt в виртуальную среду, если она активирована

Как запустить готовый проект на Windows с виртуальной средой через .bat файл читайте в статье:
«
Как запустить проект Python с virtual environment в файле .bat в Windows»

Источник информации:
https://docs.python.org/3/tutorial/venv.html