Visual Code на Windows не может найти модуль после его установки с помощью PIP. Используете неправильный Python в окне терминала? - PullRequest
0 голосов
/ 13 июля 2020

Я использую Visual Code 1.47.0 на Windows 8.1 с установленной последней версией расширения Python. Я только что установил модуль, используя pip . Затем я создал новый файл Python, чтобы проверить его. IDE выделяет оператор import как ошибку, а в раскрывающемся информационном поле говорится: «Невозможно импортировать 'extpylib'. Если я попытаюсь запустить / отладить тестовый файл, я получаю сообщение об ошибке трассировки:

C:\Users\User\AppData\Roaming\Python\Python38\Scripts

Exception has occurred: ModuleNotFoundError
No module named 'extpylib'
  File "C:\Users\user\Documents\PythonProjects\test-extpylib.py", line 2, in <module>
    import extpylib

Если я снова запустил команду pip install, даже с аргументом командной строки «--upgrade», будет сказано, что все установлено и что я использую последнюю сборку. Мне интересно, происходит ли это из-за того, что окно терминала VSCODE все еще использует Python 2.7 , а не версию, которую я выбрал в строке состояния, а именно Python 3.8.3 64 -bit ? Я не использую расширение Code Runner.

Я предполагаю, что это несоответствие версий между IDE и окном терминала VSCODE вызывает мою проблему? Если да, как я могу заставить окно терминала VSCODE использовать ту же версию, что и версия, выбранная в среде IDE? Если нет, то в чем реальная проблема и как ее исправить?

Ответы [ 2 ]

0 голосов
/ 17 июля 2020

Конечно, пакет, который вы установили в среде, не зависит от других сред.

Как вы сказали, терминал VSCode использует Python2 .7, в то время как в строке состояния отображается выбранный интерпретатор Python3. 8.3 64-бит. Это означает, что вы используете глобальный python (3.8.3) для запуска файла python при установке пакета в среду Python (2.7).

Решение:

После того, как вы выбрали интерпретатор python в строке состояния, вам необходимо активировать среду в Терминале с помощью ярлыка 'Ctrl + Shift +' '. Вы можете с помощью этих команд проверить, какую среду вы используете:

В терминале:

С помощью команды «pip --version», чтобы проверить, какой pip вы используете.

С помощью команды «python» -> «import sys; sys.executable», чтобы проверить, какой python вы используете.

С помощью команды «python» -> «import sys; sys.path "чтобы проверить, какой" пакет сайтов "ищет интерпретатор.

0 голосов
/ 13 июля 2020

Похоже на проблему с окружающей средой. В моем собственном терминале, интегрированном с кодом Visual Studio, когда я набираю which python и which pip, я получаю правильный путь к исполняемым файлам python и pip. Итак, это:

Мне интересно, происходит ли это из-за того, что окно терминала VSCODE все еще использует Python 2.7, а не версию, которую я выбрал в строке состояния, а именно Python 3.8 .3 64-битная?

Определенно кажется, что проблема.

Если ваш терминал VSCODE по-прежнему использует Python 2.7, вы можете следовать советам, представленным здесь :

Однако запуск VS Code из оболочки, в которой активирована определенная среда Python, не активирует автоматически эту среду в интегрированном терминале по умолчанию. Используйте команду Terminal: Create New Integrated Terminal после запуска VS Code.

и

Примечание: среды conda не могут быть автоматически активированы в интегрированном терминале, если установлен PowerShell. как интегрированная оболочка. См. Интегрированный терминал - Конфигурация, чтобы узнать, как изменить оболочку.

и

Смена интерпретатора с помощью команды Python: Select Interpreter не влияет на панели терминала, которые уже открыт.

...