Вопрос по virtualenvwrapper, virtualenv, macos, python, scipy – add2virtualenv (оболочка virtualenv) не работает со scipy

6

Я хочу создать virtualenv без глобальных пакетов python, но с общим распределением scipy; установка scipy занимает довольно много времени, и я не хочу слишком часто проходить движения.

Итак, я бегуadd2virtualenv /Library/Python/2.7/site-packages/scipy и после запуска add2virtualenv показывает, что каталог добавлен. (Я дважды проверил, это правильный каталог). Тогда я выпускаюworkon myfile чтобы убедиться, что рабочие каталоги перезагружены. Тем не менее, когда я пытаюсь загрузить Scipy, этоImportError: No module named scipy, Это неожиданно.

Кто-нибудь использовал глобальный scipy в не глобальном sitepackages virtualenv?

Спасибо. Поэтому я неверно истолковал способ добавления add2virtualenv. Нет ли команды, которая облегчает добавление определенного пакета? (кроме символической ссылки?) Okke
Альтернативное решение должно заключаться в символической ссылке на каталог scipy внутри site-package виртуального env. rubik
Я не знаю, как работает virtualenvwrapper, но я так не думаю ... Ссылка на меня кажется хорошим решением. В конце концов, многие модули внутри site-пакета virtualenv являются символическими ссылками. rubik
что я обычно делаю, это создаю одну «базу» Virtualenv с--no-system-site-packages, pip установите scipy, numpy и т. д., затем используйтеcpvirtualenv клонировать его всякий раз, когда я хочу новый "одноразовый" Virtualenv возиться с. ali_m
add2virtualenv добавить указанный каталог в PYTHONPATH. Поэтому вы должны добавить весь свой пакет сайта для импорта scipy. rubik

Ваш Ответ

1   ответ
3

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

add2virtualenv /Library/Python/2.7/site-packages/scipy

Так должно быть

add2virtualenv /Library/Python/2.7/site-packages

Осторожно: у этого решения есть тот недостаток, что вы включаете не только scipy, но и любые другие пакеты в/Library/Python/2.7/site-packages.

Альтернативное, эффективное с точки зрения пространства решение может представлять собой символьный каталог scipy внутри пакета site виртуального окружения. Это можно сделать в вашей виртуальной среде:

cdsitepackages
ln -s /Library/Python/2.7/site-packages/scipy scipy

All credits go to @rubik (see the comments)

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

Похожие вопросы