Как запустить Python и Jupyter с одной и той же виртуальной средой, работая с кодом Visual Studio - PullRequest
0 голосов
/ 07 февраля 2020

Для моей текущей работы было бы чрезвычайно полезно иметь возможность настроить virtualenv с соответствующими версиями библиотек и иметь возможность запускать либо проект python, либо ячейки в jupyter. Это потому, что некоторые люди на моей работе работают с jupyter, а некоторые с Python, а иногда и с обоими, и таким образом у меня будет централизованная программа, которая может запускать оба типа, которые я не нашел за исключением платной версии PyCharm , которую моя компания не предоставляет.

Я только что узнал несколько дней о go о Windows Подсистеме для Linux, WSL, и о том, что она может быть запущена с помощью кода Visual Studio, поэтому я Я чувствую, что это моя лучшая ставка для достижения этой двойной природы программирования только из ОДНОЙ программы, вместо запуска нескольких, как в прошлом.

На данный момент у меня есть репозиторий, клонированный с WSL для git проект с разными ".py" файлами, я открываю его с помощью VS C, затем открываю терминал внутри VS C, и я могу как отредактировать код Python, так и запустить его на терминале, используя bash Команды, как если бы я был в Ubuntu (я делаю все это с windows, но могу переключиться на Ubuntu, если это будет означать, чтобы иметь возможность выполнить этот тип установки).

Когда я запускаю wi th "Запустите Python файл в терминале", он использует virtualenv, который я ранее создал.

Проблема в том, что с Jupyter он не обнаруживает, что у меня установлены библиотеки (например, Pandas)

Описание моего процесса с Jupyter: с консоли WSL я запускаю jupyter notebook &. Затем я подключаюсь к этому серверу, используя опцию VS C для «Указать локальный или удаленный сервер Jupyter для соединений», использую опцию «Существующий», копирую URL, затем я go в файл «.ipynb» и запустите код.

Если в ячейке Jupyter я наберу

import os
os.environ['VIRTUAL_ENV']

, я смогу увидеть свою виртуальную среду. Если сразу после этого я запускаю import pandas, я получаю ModuleNotFoundError: No module named 'pandas'

Если я делаю !pip freeze, я вижу все библиотеки и правильные версии, которые я установил в этой среде.

Я чувствую, что я почти там, но чего-то не хватает. Я предполагаю, что import может идти к некоторому установленному по умолчанию Python, а не к тому из среды, по какой-то причине мне не хватает.

1 Ответ

0 голосов
/ 20 февраля 2020

Решается, делая то, что предлагает этот ответ. Остальные ответы также могут помочь:

{ ссылка }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...