Выбор среды Python для проекта в Visual Studio

Весь код в проекте Python выполняется в контексте определенного окружения. Эти среды могут быть глобальной средой Python, средой Anaconda, виртуальной средой или средой conda. Visual Studio использует среду Python для отладки, импорта и завершения элементов и проверка синтаксиса. Среда используется для любых задач, требующих языковых служб, относящихся к версии Python и набору установленных пакетов.

В Visual Studio можно создать несколько сред для проекта и переключаться между ними в соответствии с конкретными потребностями разработки. Все новые проекты Python изначально настроены для использования глобальной среды по умолчанию. Среды для проекта можно просмотреть в узле "Среды Python" в Обозреватель решений:

Screenshot that shows the global default Python environment for a project in Solution Explorer in Visual Studio.

Необходимые компоненты

Переключение текущей среды проекта

В Visual Studio можно изменить активную (текущую) среду для проекта Python в Обозреватель решений или на панели инструментов с помощью функции добавления среды.

  1. Запустите процесс добавления среды:

    • В Обозреватель решений щелкните правой кнопкой мыши узел "Среды Python" для проекта и выберите "Добавить среду".
    • Или на панели инструментов Python выберите "Добавить среду " в раскрывающемся меню "Среда ".

    Screenshot that shows the two options to access the Add Environments feature in Visual Studio.

  2. В диалоговом окне "Добавить среду" выберите вкладку "Существующая среда". Разверните раскрывающийся список "Среда" и выберите нужную среду, а затем нажмите кнопку "Добавить".

    Screenshot that shows how to select a project environment in the Add Environments dialog in Visual Studio.

Примечание.

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

Использование виртуальных окружений

Виртуальная среда — это уникальное сочетание определенного интерпретатора Python и определенного набора библиотек, отличающихся от других глобальных и конда-сред. Виртуальная среда зависит от проекта и поддерживается в подпапке проекта. Папка содержит установленные библиотеки среды вместе с файлом pyvenv.cfg, указывающим путь к базовому интерпретатору среды в файловой системе. (Виртуальная среда не содержит копию интерпретатора, только ссылку на нее.)

Одним из преимуществ использования виртуальной среды является то, что при разработке проекта с течением времени виртуальная среда всегда отражает точные зависимости проекта. Это поведение отличается от общей глобальной среды, которая содержит любое количество библиотек, которые используются в проекте или нет. В виртуальной среде можно легко создать файл requirements.txt , который используется для переустановки зависимостей пакетов на других компьютерах разработки или рабочей среды. Дополнительные сведения см. в руководстве по управлению необходимыми пакетами с помощью requirements.txt.

Если в Visual Studio открыть проект, который содержит файл requirements.txt, Visual Studio автоматически позволит воссоздать виртуальное окружение. На компьютерах, на которых Visual Studio не установлена, можно использовать pip install -r requirements.txt команду для восстановления необходимых пакетов.

Так как виртуальная среда содержит жестко закодированный путь к базовому интерпретатору Python, и вы можете воссоздать среду с помощью файла requirements.txt , обычно не указывайте вложенную папку среды из системы управления версиями. После добавления виртуальной среды в проект он появится в окне "Среды Python". Затем ее можно активировать как любую другую среду и управлять своими пакетами.

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

Виртуальное окружение можно создать напрямую в Visual Studio, выполнив следующие действия.

  1. Запустите процесс добавления среды:

    • В Обозреватель решений щелкните правой кнопкой мыши узел "Среды Python" для проекта и выберите "Добавить среду".
    • Или на панели инструментов Python выберите "Добавить среду " в раскрывающемся меню "Среда ".
  2. В диалоговом окне "Добавить среду" выберите вкладку "Виртуальная среда":

    Screenshot of the Virtual environment tab of the Add Environment dialog box in Visual Studio.

  3. Настройте обязательные поля:

    Обязательное поле Description
    Проект Определите проект, в котором создается среда.
    Имя Укажите имя новой виртуальной среды.
    Базовый интерпретатор Укажите интерпретатор базового языка для виртуальной среды.
    Местонахождение Система назначает расположение по умолчанию для виртуальной среды. Чтобы изменить расположение, выберите ссылку "Изменить расположение виртуальной среды ", перейдите к расположению и выберите папку Select.
  4. Настройте любые нужные необязательные поля:

    Необязательное поле Description
    Установка пакетов из файла Укажите путь к файлу requirements.txt для добавления пакетов в виртуальную среду. Введите расположение и имя файла или перейдите (...) в расположение и выберите файл.
    Установка в качестве текущей среды Активируйте новую среду в выбранном проекте после создания среды.
    Установка в качестве среды по умолчанию для новых проектов Автоматическая установка и активация среды в любых новых проектах, созданных в Visual Studio. Этот параметр также доступен через среду по умолчанию для новых проектов в окне "Среды Python". При использовании этого параметра поместите виртуальную среду в расположение за пределами определенного проекта.
    Просмотр в окне "Среды Python" Укажите, следует ли отображать окно сред Python после создания новой среды.
    Сделать эту среду доступной глобально Укажите, должна ли виртуальная среда также выступать в качестве глобальной среды. При использовании этого параметра поместите виртуальную среду в расположение за пределами определенного проекта.
  5. Выберите Создать, чтобы завершить создание виртуального окружения.

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

После завершения процесса Visual Studio активирует новую виртуальную среду и добавляет ее в узел сред Python в Обозреватель решений. Среда также доступна в окне "Среды Python" для содержащегося проекта.

Активация среды

Выполните следующие действия, чтобы активировать существующую среду для проекта:

  1. В Обозреватель решений разверните узел сред Python для проекта и найдите среду, которую вы хотите использовать.

  2. Щелкните правой кнопкой мыши среду и выберите "Активировать среду".

    Screenshot that shows how to activate a project environment in Visual Studio.

    Если Visual Studio обнаружит в этом окружении файл requirements.txt, появится запрос на установку обнаруженных пакетов.

    После активации среды Visual Studio имя активной среды отображается в полужирном шрифте в Обозреватель решений:

    Screenshot that shows how Visual Studio shows the name of the active environment in a bold font in Solution Explorer.

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

Выполните следующие действия, чтобы удалить существующую среду для проекта:

  1. В обозревателе решений щелкните правой кнопкой мыши виртуальное окружение и выберите Удалить.

  2. Visual Studio спрашивает, нужно ли удалить или удалить виртуальную среду.

    • Выберите "Удалить ", чтобы сделать среду недоступной для проекта, но оставьте ее в файловой системе.
    • Выберите "Удалить ", чтобы удалить среду из проекта и удалить ее из файловой системы. Это действие не затрагивает базовый интерпретатор.

Просмотр установленных пакетов и управление ими

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

  • Чтобы быстро просмотреть пакеты, установленные в среде, разверните узел среды в узле сред Python для проекта в Обозреватель решений:

    Screenshot that shows Python packages for an environment in Solution Explorer in Visual Studio.

  • Чтобы установить новые пакеты или управлять существующими пакетами, щелкните правой кнопкой мыши узел среды и выберите пункт "Управление пакетами Python". Вы также можете использовать кнопку пакета на панели инструментов Python:

    Screenshot that shows how to access the Manage Python packages option for an environment in Solution Explorer.

    Откроется окно "Среды Python" и отображается установленные пакеты для выбранной среды на вкладке "Пакеты (PyPI" :

    Screenshot that shows the current packages for the selected environment in the Python Environments window.

    В Visual Studio пакеты и зависимости для большинства сред загружаются из индекса пакетов Python (PyPI), где можно также искать доступные пакеты. В строке состояния Visual Studio и окне вывода отображаются сведения об установке.

  • Чтобы удалить (удалить) пакет, найдите пакет в списке и щелкните значок x справа.

  • Чтобы найти обновленные версии пакета или других пакетов, введите условие поиска (обычно имя пакета):

    Visual Studio отображает соответствующие пакеты. В этом примере выполняется поиск пакетов, которые соответствуют термину мигателя.

    Screenshot that shows how Visual Studio shows how to search for matching packages in the Python Environments window.

    Visual Studio отображает список соответствующих результатов в виде активных ссылок команд.

    • Первая команда обновляет пакет до последней версии и текущих зависимостей. Команда похожа на Run command: pip install <package-name>. Если выбрать ввод после условия поиска, Visual Studio автоматически запускает эту первую команду.

    • Другие ссылки предназначены для команд, устанавливающих определенный пакет, версию или зависимость, например Install blinker-async (0.0.3). Чтобы выполнить одну из этих команд, выберите ссылку.

Рекомендации по установке пакета

При работе с пакетами в Visual Studio помните следующее:

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

  • Visual Studio использует диспетчер пакетов pip, если он доступен, и при необходимости скачивает и устанавливает его. Visual Studio также может использовать диспетчер пакетов простой установки (easy_install). Также отображаются пакеты, установленные с помощью pip команд или easy_install команд из командной строки.

  • Если пакет содержит исходный код собственных компонентов в файлах с расширением .pyd, попытка pip установить пакет завершается сбоем. Без установленной версии Visual Studio pip не может компилировать эти компоненты. В этом случае отображается такое сообщение: Ошибка: не удалось найти vcvarsall.bat. Команда easy_install часто может скачать предварительно скомпилированные двоичные файлы, и вы можете скачать подходящий компилятор для более старых версий Python.https://python.en.uptodown.com/windows/versions Дополнительные сведения см. в статье о том, как справиться с болью "не удается найти vcvarsallbat" в блоге команды инструментов Python.

  • Обычно диспетчер пакетов conda по умолчанию использует канал https://repo.continuum.io/pkgs/, но доступны и другие каналы. Дополнительные сведения см. в статье Управление каналами (docs.conda.io).

  • В настоящее время Visual Studio не поддерживает установку conda пакетов в среду conda. conda Используйте команду из командной строки.