ПРОТИВ кода, не обнаруживающего пакет в среде conda

#python #visual-studio-code #conda #zipline

#python #visual-studio-code #conda #zipline

Вопрос:

Я использовал conda install -c Quantopian zipline для установки zipline пакета в новой среде conda. Я активировал среду conda из VS Code, и мой settings.json текст выглядит следующим образом:

 {
    "python.pythonPath": "C:\Anaconda3\envs\zipline\python.exe"
}
  

Нижняя строка в моем VS Code показывает, что используется 'zipline' среда conda.
Однако следующий оператор import выдает ModuleNotFoundError .

 from zipline.examples import buyapple
  

Ошибка:

 Traceback (most recent call last):
  File "d:Studiesnsedatazipline_setup.py", line 1, in <module>
    from zipline.examples import buyapple
ModuleNotFoundError: No module named 'zipline'
  

Когда я импортирую тот же пакет из терминала VS Code, проблем нет:

 (base) PS D:Studiesnsedata> conda activate zipline
(zipline) PS D:Studiesnsedata> python
Python 3.6.10 |Anaconda, Inc.| (default, May  7 2020, 19:46:08) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from zipline.examples import buyapple
>>>
  

Что я здесь делаю не так и что можно исправить? Буду признателен за любую помощь по этому поводу.

Ответ №1:

Как я вижу, вы используете conda среду, вам нужно указать pythonPath эту конкретную среду conda вместо базового пути Conda.

В вашем случае это ‘zipline’, поэтому в командной палитре найдите свою среду conda и выберите ее как pythonPath. Смотрите изображение ниже:

Да, Python: Select Interpreter команда из Command Palette

введите описание изображения здесь

Чтобы активировать conda env

Добавьте приведенные ниже настройки в свой settings.json:

 “terminal.integrated.shell.windows”:“C:\Windows\System32\cmd.exe”
“terminal.integrated.shellArgs.windows”: [“/K”, “C:\<path-to-conda-installation>\Scripts\activate.bat C:\<path-to-conda-installation> amp; conda activate <your-env-name>”]
  

Перезапустите свой vscode, как только будут установлены вышеуказанные настройки.

Вы также можете попробовать это замечательное расширение для vscode в качестве дополнения https://marketplace.visualstudio.com/items?itemName=formulahendry.code-runner

Комментарии:

1. Я уже сделал это, мой путь к python такой: « { «python.pythonPath»: «C:\Anaconda3\envs\zipline\python.exe » } «

2. Вот как мой settings.json выглядит сейчас, но он все еще не работает. { "python.pythonPath": "C:\Anaconda3\envs\zipline\python.exe", "terminal.integrated.shell.windows": "C:\Windows\System32\cmd.exe", "terminal.integrated.shellArgs.windows": ["/K", "C:\Anaconda3\Scripts\activate.bat C:\Anaconda3 amp; conda activate zipline"] }

3. Попробуйте установить condapath, поскольку, похоже, возникла проблема с вашим путем к conda "python.condaPath": "C:\path-to-conda\conda.bat"

Ответ №2:

После установки пакета вам лучше перезагрузить VSCode.

‘Ctrl щелчоклевой кнопкой мыши’ или ‘F12’ на ‘zipline’ может ли перейти к файлу в пакете zipline?

Не могли бы вы добавить этот код в файл python?

 import sys
print(sys.executable)
print(sys.path)
  

Выходные данные могут показать вам, какой интерпретатор вы используете, и местоположения, в которых интерпретатор ищет пакеты.

Ответ №3:

Пришел к вашему ответу с той же проблемой, и в моем случае среда conda отсутствовала в списке интерпретаторов из командной палитры vscode, в частности, там был один с неправильным ПУТЕМ, у него был <TOKEN> в середине.

Мое решение

  • Откройте палитру команд (Ctrl Shift P в Linux)
  • Введите > Python select interpreter и нажмите enter
  • Вставьте путь к среде conda, в моем случае /home/USER/miniconda3/envs/ldm

Это сработает автоматически, перезапускать vscode не пришлось, но вы также можете попробовать использовать команду Developer: Restart extension host из командной палитры, если у вас более старая версия vscode.