Выполнение кода VS в Windows с Python 3.7.2 32bit в среде venv.Я искал и искал, либо я что-то делаю неправильно, либо VS Code не будет делать то, что я хочу.
Отладчик кода VS, работающий под "Python: Current File (Integrated Terminal)"
, не находит пакеты, установленные с помощью pip install
внутри моего (env)
.На самом деле, похоже, что пакеты вообще не устанавливаются в виртуальной среде.
Всякий раз, когда я пытаюсь отладить один файл py, отладчик говорит мне, что не может найти пакет, который я установил, используя pip
.Я установил пакеты внутри venv (env)
, или так я думал.Однако при запуске pip list
с активным (env)
отображается тот же список, что и при его деактивации.
Я заметил, что выполнение pip install
при активном (env)
не всегда приводит к установке пакета в моей среде.pip list
покажет это, но pip show
покажет это в Python appdata\local\programs\python\python37-32\lib\site-packages
.
Я создаю среды, используя python -m venv env
внутри терминала vs code (либо оболочка python, либо оболочка git bash).Он показывает (env)
как активный, поэтому я не уверен, что делаю.
Я не изменил конфигурацию launch.json: {
"name": "Python: Current File (Integrated Terminal)",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal"
}
VS Код показывает, что я использую правильный интерпретатор venv:
Python 3.7.2 32-bit ('env': venv)
Запуск сценария непосредственно в терминале VS Code python script.py
работает правильно каждый раз.
Копирование пакетов вручную из:
appdata\local\programs\python\python37-32\lib\site-packages
в
env\lib\site-packages
позволяет отладчику работать без ошибок.Это здорово, и это обходной путь, но, похоже, проблема скорее в том, что мой venv
на самом деле не действует как venv
.
Я не вижу проблем с venv на моих Linux-машинах,но они в основном без головы, поэтому я не использую VS Code.
Есть идеи, что мне не хватает?Спасибо за любую помощь.