Я установил некоторое программное обеспечение (ViennaRNA), которое поставляется с привязками python 2 и python 3.Поскольку я собрал его из исходного кода в Ubuntu Linux, пакет "RNA" по умолчанию установлен в /usr/local/lib/pythonX.Y/site-packages/RNA.
Но я не могуimport RNA
от питона.Похоже, что Python ищет только в dist-пакетах.
Например, python3 -c "import site; print(site.getsitepackages())"
печатает ['/usr/local/lib/python3.6/dist-packages', '/usr/lib/python3/dist-packages', '/usr/lib/python3.6/dist-packages']
.
Я также попытался посмотреть на sys.path, python3 -c "import sys; print(sys.path)"
, здесь также отображаются только разные папки dist-packages.
Частичное решение
export PYTHONPATH="$PYTHONPATH:/usr/local/lib/python2.7/site-packages:/usr/local/lib/python3.6/site-packages"
Добавление пакетов сайтов Python2 и Python3 в $ PYTHONPATH почти работает, но я не доволен этим решением, потому что Python3 найдет python2модуль, если он объявлен первым в переменной.Я хочу, чтобы каждый питон нашел соответствующую версию модуля.
Вопрос
Я хотел бы правильно настроить свою ОС (не учитывая здесь conda / virtual environment), есть лиспособ заставить python заглянуть в соответствующую папку site-package?