Установка пакета python в нужную папку

Я загрузил пакет python для установки на моем компьютере ubuntu. Пакет уже имеет файл setup.py, но я хочу изменить адрес установки python по умолчанию на что-то другое, для этого пакета (и не для хорошего). Итак, я пробовал:

Сначала в терминале я экспортирую этот адрес новой папки: export PYTHONPATH=${PYTHONPATH}:${HOME}/Documents/testfolder/lib/python2.7/site-packages

Затем я добавляю этот экспортированный адрес в качестве префикса к команде установки: python setup.py install --prefix=~/Documents/testfolder

Установка проходит. Теперь, чтобы заставить python всегда искать этот новый путь (рядом с установочным путем по умолчанию), я экспортирую адрес в файл bashrc: export PYTHONPATH="${PYTHONPATH}:~/Documents/testfolder/lib/python2.7/site-packages"

Но теперь, когда я открываю терминал и пытаюсь импортировать установленный пакет, он не может видеть ( "no module named..." ). Только когда я открываю терминал в папке, где у меня есть файлы установки (а именно setup.py), и запускаю python, можно ли увидеть пакет, и он там работает.

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

Ответ 1

Чтобы ответить на вопрос об пути экспорта. У вас есть $PYTHONPATH как часть вашего $PATH? Если нет, вы должны добавить его в путь.

Лучший способ справиться с этим сценарием, на мой взгляд, - использовать виртуальную среду python. Есть пара на выбор, но мне нравится virtualenv лучший. Причина такого подхода заключается в том, что вы можете управлять различными версиями python в отдельных папках. И в этих папках установлены отдельные пакеты. Я рекомендую изучить его, поскольку это очень полезный инструмент. Если вы хотите изучить, как это использовать, я могу предоставить, что https://virtualenv.pypa.io/en/stable/