#python #visual-studio-code #pip
#питон #visual-studio-code #pip #python
Вопрос:
У меня возникают проблемы, пытаясь понять, почему VSCode использует другую pip
версию.
У меня в Windows установлены две версии python, python38
и python39
, если я открою терминал win 10, я получу версию pip 20.2.4
при запуске pip3 --version
, но если я выполню ту же команду внутри терминала VSCode, которую я получил pip 20.2.2
c:python38libsite-packagespip (python 3.8)
.
Оба терминала работают PowerShell 7.0.3
с одним и тем же профилем.
Кроме того, удаление python38 из глобальной переменной PATH выдает ошибку command not found только в vscode, в терминале Windows продолжает работать, как я описал ранее.
Не удалось исправить это, поэтому я удалил все временные и профильные данные vscode и теперь могу запускать pip из своего терминала.
Комментарии:
1. У вас есть виртуальная среда, активированная в терминале VSCode?
2. нет виртуальной среды, я просто запускаю pip —verion из оболочки
3.
pip3 --version
илиpip --version
? (хотя, вероятно, всегда указывается одна и та же версия, если в системе не установлен python 2, а ПУТЬ имеет определенный порядок)4. обе команды выдают одну и ту же версию, которая равна 20.2.2 в vscode и 20.2.4 в терминале Windows
Ответ №1:
Попробуйте изменить свой интерпретатор: ctrl shift p
-> select python interpreter
и выберите тот, который вы хотите, потому что pip является частью среды python, и поэтому используемая вами версия pip привязана к активному интерпретатору python (cc @DragonBobZ)
Комментарии:
1. Кроме того, pip является частью среды python, и поэтому используемая вами версия pip привязана к активному интерпретатору python
2. Я уже делал это с python39 в качестве моего интерпретатора, но он продолжает использовать pip из python38 при выполнении команды.
Ответ №2:
Все дело в процессе PATH
. Проверьте $Env:PATH
оба. Начиная слева, используется первая папка с. pip3.exe
Вероятно, вы выбрали интерпретатор python для VS Code, который затем добавляет его в PATH
.
Вы также можете проверить местоположение используемого pip3.exe
с Get-Command pip3
помощью . (может быть полезно при отладке)
Комментарии:
1. это часть моей переменной path в обоих терминалах C:Program ФайлыPowerShell7;C:Python39Scripts ;C:Python39 ;C:Program ФайлыMicrosoft MPIBin;C:Python38Scripts ;C:Python38 ;C:Program Файлы (x86)Общие FilesOracleJavajavapath;C:WINDOWSsystem32;C:WINDOWS;C:WINDOWSSystem32Wbem;C:WINDOWSSystem32WindowsPowerShellv1.0;C:WINDOWSSystem32OpenSSH;
2. что выводится
Get-Command pip3
в терминале VS Code?3. Приложение pip3.exe 0.0.0.0 C:Python38Scriptspip3.exe
4. по какой-то причине терминал vscode пропускает путь python39 для команды pip или отдает предпочтение команде pip, которая появляется больше в конце
5.Вы уверены в выводе
$Env:PATH
? (особенно, вывод в терминале VSCode) Поскольку естьC:Python39Scripts
раньшеC:Python38Scripts
, выводGet-Command pip3
должен бытьC:Python39Scriptspip3.exe
(а не Python38).
Ответ №3:
Похоже, что-то было исправлено после удаления всех данных профиля и настроек из кода Visual Studio, теперь он запускает pip из терминала внутри vscode.