Я пытаюсь написать скрипт для активации виртуальной среды под путем, который выполняет ту же функцию, что и следующая командная строка:
cd C:\go\to\my\venv\path\Scripts
.\activate
Моя идея - сначала изменить каталог напапку «Мои сценарии», затем запустите файл. \ activate.Проблема в том, что я пытался
1. os.system(".\\activate") #".\activate" is an error
2. subprocess.run(".\\activate")
3. subprocess.call(".\\activate")
4. subprocess.Popen(".\\activate", shell=True)
, но все не удалось, и потомуЯ новичок в Python 3, поэтому любые предложения будут оценены, спасибо.
Обновление 1: сейчас, похоже, можно успешно установить один пакет, но у меня есть список пакетов, которые нужно установить, и яразберусь как это сделать.Когда я распечатываю os.getcwd () после того, как активировал venv, в результате в качестве префикса нет (venv), поэтому я не знаю, был ли пакет установлен под venv или нет?
Обновление 2: Теперь моя проблема в том, что я использую из pip._internal import main как pip
pip (['install', package_name]). Он может успешно установить только один пакет, если я передам списокпакеты и используйте цикл for для их установки, тогда они потерпят неудачуОшибка будет
Не удалось установить пакеты из-за ошибки EnvironmentError: [Errno 2] Нет такого файла или каталога: 'C: \ Users \ BO7D71 ~ 1.CHE \ AppData \ Local \ Temp \ pip-req-tracker-1nc0ofuc \ 5fc2bc8999692b42fb54fd13e7cbdf5f855b9718f5363d30a270bbe1 '
Обновление 3: проблема решена!