Скажите Atom + Hydrogen искать пакеты в виртуальной среде. - PullRequest
0 голосов
/ 04 августа 2020

Я совершенно новичок в этом. Я установил Python3 и Atom и установил Hydrogen для Atom, чтобы я мог запускать каждую строку моего кода и видеть результат.

Я настроил виртуальную среду и добавил в нее пакеты.

Моя проблема в том, что внутри моего файла Atom .py, когда я, например, говорю import numpy as np, он сообщает мне, что модуль не найден. Поэтому я думаю, что он смотрит в какое-то место по умолчанию, а не в мою виртуальную среду. Это имеет смысл, поскольку я не знаю, как сказать ему, чтобы он заглядывал внутрь виртуальной среды.

Я знаю, что внутри терминала я могу загрузить виртуальную среду, а затем вызвать оттуда файл .py, и он будет выглядеть В правильном месте. Однако я не хочу этого делать. Я хочу, чтобы он смотрел в виртуальную среду в верхней строке кода и выполнял его с использованием водорода, а затем загружал пакеты, которые я хочу использовать с помощью водорода, а затем продолжал с каждой строкой кода после этого, используя водород.

Может ли кто-нибудь сказать мне, как указать python, что он должен искать в определенной c виртуальной среде на время разработки / выполнения файла .py?

1 Ответ

1 голос
/ 04 августа 2020

Для нашей цели здесь виртуальные среды просто изменяют путь поиска вашего интерпретатора.

Поэтому, если мы хотим искать в данной виртуальной среде, мы можем просто добавить путь этой среды к нашему пути поиска, что вы можете сделать в python, используя

import sys
sys.path.append('/path/to/virtualenv')

Путь к вашей виртуальной среде зависит от того, как вы ее настроили, но обычно они хранятся в подпапке вашего домашнего каталога с именем .virtualenvs, поэтому это, вероятно, будет выглядеть как

import sys
sys.path.append('/home/username/.virtualenvs/EnvName/')

# rest of code

Также обратите внимание, что это не меняет ваш системный путь или переменные среды pythonpath и, следовательно, действует только в течение этого python экземпляра интерпретатора.

...