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

Configure a virtual environment

PyCharm makes it possible to use the virtualenv tool to create a project-specific isolated virtual environment . The main purpose of virtual environments is to manage settings and dependencies of a particular project regardless of other Python projects. virtualenv tool comes bundled with PyCharm, so the user doesn’t need to install it.

For Python 3.3+ the built-in venv module is used, instead of the third-party virtualenv utility.

Create a virtualenv environment

  1. Do one of the following:
    • Click the Python Interpreter selector and choose Add New Interpreter .
    • Press Control+Alt+S to open Settings and go to Project: | Python Interpreter . Click the Add Interpreter link next to the list of the available interpreters.
    • Click the Python Interpreter selector and choose Interpreter Settings . Click the Add Interpreter link next to the list of the available interpreters.
  2. Select Add Local Interpreter .
  3. In the left-hand pane of the Add Python Interpreter dialog, select Virtualenv Environment . Creating a virtual environment
  4. The following actions depend on whether you want to create a new virtual environment or to use an existing one. New virtual environment
    • Specify the location of the new virtual environment in the Location field, or click and browse for the desired location in your file system. The directory for the new virtual environment should be empty.
    • Choose the base interpreter from the list, or click Choose the base interpreterand find the desired Python executable in your file system.
    • Select the Inherit global site-packages checkbox if you want all packages installed in the global Python on your machine to be added to the virtual environment you’re going to create. This checkbox corresponds to the —system-site-packages option of the virtualenv tool.

    Existing virtual environment

    • Choose the desired interpreter from the list.
    • If the desired interpreter is not on the list, click , and then browse for the desired Python executable (for example, venv/bin/python on macOS or venv\Scripts\python.exe on Windows).

The selected virtual environment will be reused for the current project.

If PyCharm displays the Invalid environment warning, it means that the specified Python binary cannot be found in the file system, or the Python version is not supported. Check the Python path and install a new version, if needed.

You can create as many virtual environments as required. To easily tell them from each other, use different names.

Читайте также:  Html image media type

PyCharm can create a virtual environment for your project based on the project requirements.

Create a virtual environment using the project requirements

Create a virtual environment using the requirements.txt file

  1. Open any directory with your source files that contains the requirements.txt or setup.py file: select File | Open from the main menu and choose the directory.
  2. If no virtual environment has been created for this project, PyCharm suggests creating it:
  3. Keep the suggested options, or specify the environment location or base Python interpreter. Click OK to complete the task.

The environment is created

Once you click OK , PyCharm creates an environment and installs all the required packages. On the completion, see the notification popup:

Warning with options for configuring a project interpreter

Note that if you ignore a suggestion to create a virtual environment, PyCharm won’t create a Python interperter for your project. So, any time when you open a .py file, you’ll see the warning with the options for configuring a project interpreter:

This approach is particularly helpful when you want to upgrade a version of Python your environment is based on, for example, from 3.5 to 3.9. You can specify a new base interpreter and use requirements.txt to ensure all the needed packages are installed.

For any of the configured Python interpreters (but Docker-based), you can:

Once you have create a new virtual environment, you can reuse it for your other projects. Learn more how to setup an existing environment as a Python interpreter.

Источник

Использование виртуальных сред venv и virtualenv для создания окружения Python

Создание виртуального окружения в Python 3 с venv и virtualenv

Виртуальные среды (окружения) используются в Python 3 контроля версионности пакетов. Кроме контроля версий среды используют для использования разных интерпретаторов. Самих пакетов, которые создают виртуальные окружения много. В этой статье речь пойдет про venv, virtualenv и virtualenvwrapper.

Для чего нужно виртуальные среды?

При создании скрипта или программы вы часто используете сторонние модули (пакеты). Если в последующем потребуется перенос программы на другой компьютер, то вы можете столкнуться с двумя проблемами:

  1. Нужные пакеты отсутствуют на новом компьютере и придется проверять каждый файл программы для их поиска. Либо получить список установленных пакетов через «pip list» на старом компьютере, который выведет множество лишних модулей.
  2. Даже если количество пакетов или файлов программ маленькое, или вы его создали отдельно, то вы все равно можете столкнуться с проблемами в версиях. Пакеты могли быть обновлены, а методы и классы изменены.

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

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

Установка и создания окружения с virtualenv

Самый популярный пакет, который используется для создания виртуальных сред в Python, это virtualenv. Для его установки на Windows выполните:

Читайте также:  2503 ошибка при установке python

Для установки на Linux системах, для Python 3, понадобится выполнить такую команду:

sudo pip3 install virtualenv

Если вы не будете использовать sudo, то в зависимости от версии ОС у вас появятся разные ошибки. В CentOS установка не выполнится вовсе, а в Ubuntu не будет добавлен путь в переменную окружения:

  • PermissionError: [Errno 13] Permission denied: ‘/usr/local/lib/python3.6’
  • Command ‘virtualenv’ not found, but can be installed with: sudo apt install virtualenv

Далее, вне зависимости от того используете ли вы Linux или Windows, вы можете выполнить команду получения справки:

Установка virtualenv в Python3

Я использую Python 3.6, и так я создам окружение в папке projectname/venv:

virtualenv -p python3.6 project/venv

Способ выше устанавливает окружение относительно текущего пути. Если нужно установить на другом диске или каталоге, то можно использовать абсолютный путь. Так же не обязательно указывать параметр «-p» если вы используете одну версию Python. Вариант как это может быть сделано на Windows:

Само расположение виртуального окружения рекомендуется создавать в одной папке вместе разрабатываемым приложением. Такую структуру будет легче сопровождать. Я обычно придерживаюсь такой структуры:

-projectname # Каталог проекта --venv # Окружение --app # Каталог с приложением

Активация и выход из окружения

Для того что бы виртуальное окружения начало работать его нужно активировать. В разных ОС это делается по-разному.

В случаях с Linux указываем полный путь до venv/bin/activate:

source project/venv/bin/activate

Для активации в Windows, в папке venv\Scripts есть несколько файлов:

Для активации просто укажите полный путь до файла. Например:

D:\projectname\venv\Scripts\activate.ps1

О том что вы находитесь в виртуальном окружении свидетельствуют следующие надписи:

Активация virtualenv в Python3

Вы так же можете сравнить количество установленных пакетов внутри виртуального окружения с тем, что установлено вне:

Список установленных пакетов через pip в Python

Теперь вы можете устанавливать пакеты, которые будут работать только в этой среде.

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

Для CMD нужно указать путь до файла «venv\Scripts\deactivate.bat».

Управление средами через virtualenvwrapper

Если вы создаете множество виртуальных сред, например для тестирования в разных версиях Python, вы можете использовать virtualenvwrapper. Этот пакет представляет собой надстройку для virtualenv для более удобной работы и устанавливается отдельно.

Благодаря этому пакету мы сможем запускать ваши окружения так:

workon project_name # вместо source project_name/venv/bin/activate

Для Windows нужно установить следующий пакет:

pip install virtualenvwrapper-win

Для Linux нужно так же использовать sudo:

sudo pip3 install virtualenvwrapper

Настройки для Linux

Virtualenvwrapper хранит все окружения в одном месте. Это место определяется через переменную WORKON_HOME в Linux и по умолчанию равно директории ‘/home/пользователь/.virtualenvs’. Если вы хотите изменить это расположение — выполните команду экспорта с нужным путем:

export WORKON_HOME = /var/envs/ # Создание директории source ~/.bashrc mkdir -p $WORKON_HOME

Следующая команда добавит скрипты в домашний каталог для удобной работы:

source /usr/local/bin/virtualenvwrapper.sh # Если путь отличается, то файл virtualenvwrapper.sh можно найти так which virtualenvwrapper.sh

При выполнении предыдущей команды у меня появилась ошибка:

Читайте также:  Проверка пустых полей html

virtualenvwrapper.sh: There was a problem running the initialization hooks. If Python could not import the module virtualenvwrapper.hook_loader

Она исправилась добавлением переменной в env с путем до нужного интерпретатора:

export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3

Настройки для Windows

Все виртуальные среды, которые будут созданы, по умолчанию будут располагаться по пути «C:\Users\%USERNAME%\Envs». Если вам нужно изменить расположение, то создайте переменную WORKON_HOME с нужной директорией:

Определение переменных окружений в Windows для virtualenvwrapper

Важный момент, в случае с Windows, команды virtualenvwrapper не будут выполняться Powershell. Команды работают только через CMD.

Основные команды

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

  • mkvirtualenv — создание окружения;
  • lsvirtualenv — отображение списка окружений;
  • rmvirtualenv — удаление;
  • workon — переключение между виртуальными средами;
  • deactivate — выход из текущего окружения.

Так мы создадим виртуальную среду:

mkvirtualenv project_name

Создание окружения с mkvirtualenv в Python virtualenvwrapper

Так выйдем из созданной среды:

Изменение сред с workon в Python virtualenvwrapper

Если нужно использовать другую версию Python:

mkvirtualenv -p python2.7 project_name/venv

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

Ранее, до версии Python >= 3.6 базовая установка интерпретатора шла вместе с пакетом pyenv, но на данный момент он считается устаревшим и более не поддерживается. На его смену пришел venv. В некоторых версиях ОС (Ubuntu/Debian) может потребоваться его отдельная установка:

sudo apt install python3-venv

Проверить, то что пакет venv установлен, можно так:

python -m venv # или python3 -m venv

Установка venv в Python

Следующая команда создаст виртуальную среду:

python -m venv C:\project_name\project_venv # или python3 -m venv /var/project_name/project_venv

Выбранная версия Python и стандартные библиотеки будут скопированы в указанную папку.

Активация окружения выполняется следующим образом:

# CMD C:\project_name\project_venv\Scripts\activate.bat # Powershell C:\project_name\project_venv\Scripts\Activate.ps1 # Bash project_name/project_venv/bin/activate
# CMD C:\project_name\project_venv\Scripts\deactivate.bat # Powershell и bash deactivate

Создание виртуальной среды с venv в Python

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

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

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

Подключение virtualenv в Pycharm

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

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

Для настройки окружения для старых проектов нужно зайти в настройки:

Изменение виртуального окружения virtualenv в Pycharm

Во вкладе «Python Interpreter» будет выбор из существующих интерпретаторов (1). Либо можно создать новый (2):

Изменение виртуального окружения virtualenv в Pycharm

Создание списка установленных пакетов Requirements.txt

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

Так мы получим список пакетов, установленных в виртуальном окружении, в формате читаемом pip:

Получение списка установленных пакетов с pip в Python

Следующим способом мы экспортируем этот список в файл Requirements.txt (способ подходит для Bash/CMD/Powershell):

pip freeze > Requirements.txt

На другом компьютере/среде мы можем этот список быстро проверить и установить отсутствующие пакеты следующей командой:

pip install -r Requirements.txt

Источник

Оцените статью