Каковы подводные камни и обходные пути при использовании виртуальных сред Python в Windows?

Краткое описание
Вопрос не предназначен для того, чтобы спросить, необходимо ли использование виртуальных сред, но при использовании virtualenv Яна Бикинга, каков наилучший способ управления средами в Windows. Если у вас несколько идей, ответьте несколько раз, чтобы можно было проголосовать за лучшие ответы. Спасибо!

Предпосылки
При разработке на python я обычно стараюсь как можно чаще использовать Mac osx / bash. Однако всегда есть проекты, в которых я вынужден использовать Windows для поддержки оборудования / драйверов. Для этих проектов я обычно использую метод «двойного щелчка» для запуска модулей с зарегистрированным python.exe. Использование «двойного щелчка» - это такой простой способ запустить несколько потоков / тестов одновременно, без необходимости открывать новую командную строку, переходить к нужному каталогу и затем вводить «python.exe module.py» .

Конечная цель
Я хотел бы иметь способ управлять виртуальными средами и использовать их, не открывая командную строку (только для Windows)

Список желаний
1. Уметь устанавливать модули либо из pip (командная строка), либо из двоичных файлов (для тех, которые не могут быть установлены с помощью pip по какой-либо причине).

Конечная цель
Я хотел бы иметь способ управлять и использовать виртуальные среды без необходимости открывать командную строку (только для Windows)

Список желаний
1. Уметь устанавливать модули либо из pip (командная строка), либо из двоичных файлов (для тех, которые не могут быть установлены с помощью pip по какой-либо причине).

Конечная цель
Я хотел бы иметь способ управлять и использовать виртуальные среды без необходимости открывать командную строку (только для Windows)

Список желаний
1. Уметь устанавливать модули либо из pip (командная строка), либо из двоичных файлов (для тех, которые не могут быть установлены с помощью pip по какой-либо причине).
2. Управляйте средами с помощью virtualenv.exe из графического интерфейса. (Создать, удалить, перечислить, активировать и т. Д.)

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

Установить двоичные файлы в виртуальную среду можно довольно легко с помощью сценария, который изменяет версию Python, зарегистрированную в Windows. Я использую этот скрипт уже несколько месяцев, но результат отличный. См. SO. Вопрос

Управление средой представляется более сложной частью.

При использовании bash имеется virutalenvwrapper , написанный Дугом Хеллманном. Я использую это при работе в Mac OSX и настоятельно рекомендую.

Порт для этого приложения в Power Shell найден здесь , но для этого по-прежнему требуется установка стороннего интерфейса командной строки.

Один из наиболее уникальных портов, которые я видел, переносит virtualenvwrapper на файлы bat. Я не тестировал это, но это все равно потребует использования командной строки. Найдено здесь

Самая многообещающая вспомогательная функция, которую я обнаружил на сегодняшний день, написана Джастином Дрисколлом. Хотя этот точный пример потребует командной строки, было бы тривиально преобразовать это во что-то, что может вызывать графический интерфейс Python. Это был путь, по которому я шел, прежде чем подумал, что должен уточнить у масс, как лучше всего достичь своей цели.

12
задан Community 23 May 2017 в 11:50
поделиться