Как добавить мой собственный модуль в мою среду Anaconda - PullRequest
0 голосов
/ 20 октября 2019

В основном вопрос уже там. Я создал свой environemt для проекта с Miniconda. Теперь я хочу включить несколько модулей, входящих в каталог, в эту среду. Поэтому я поместил каталог в каталог /miniconda/env/..../sitepackages/mymodule/. Когда я запускаю модуль из командной строки, где мой текущий рабочий каталог - это каталог, он работает. Как только я просто активирую эту среду conda и работаю в другом каталоге, он говорит мне ModuleNotFoundError: No module named 'stdiio'

Надеюсь, что это имеет смысл, и я получил более или менее ясный вопрос. Любая помощь будет очень признательна.

1 Ответ

0 голосов
/ 20 октября 2019

Если ваш модуль устанавливается (например, у вас есть setup.py), то вы можете активировать вашу Conda env и установить с помощью pip:

conda activate -n myenv
pip install /some/path/to/mymodule

Если вы активно разрабатываете модуль, используйтеpip install -e, вместо.

Если ваш модуль не устанавливается, а содержит только несколько исходных папок с файлами __init__.py, то другой вариант - добавить содержащую папку в PYTHONPATH. Например, если ваш модуль находится в /some/path/to/mymodule, вы должны использовать

export PYTHONPATH="/some/path/to:$PYTHONPATH"

Будьте осторожны с PYTHONPATH - могут возникнуть непонятные проблемы, если вы позволите конфликтующим внешним модулям «просочиться» в ваш Condaокружение (например, добавление site-packages из другой установки Python).

Установка должна быть предпочтительным вариантом, и если вам нужно использовать PYTHONPATH, , установите ее специфичным для env способом, используяКрючки активации .

...