Проблема с импортом библиотек - "Ошибка импорта: нет модуля с именем ____"
Я просмотрел много других вопросов / ответов по этой теме, но безрезультатно.
Я скачал numpy и nltk, используя pip, и на основании сообщений, которые я знаю, место установки: Requirement already satisfied (use --upgrade to upgrade): nltk in /usr/local/lib/python2.7/site-packages
, так что, похоже, он устанавливается в каталог для версии 2.7.
Когда я бегу python
я получил Python 2.7.3 (v2.7.3:70274d53c1dd, Apr 9 2012, 20:52:43)
, так что это явно также версия 2.7.
Однако, когда я пытаюсь "импортировать nltk" или "импортировать numpy" в консоли Python, я всегда получаю ImportError: No module named nltk
ошибка. Любой совет будет принята с благодарностью!
2 ответа
Попробуйте изменить PYTHONPATH
переменная окружения. Если вы используете BASH, ниже должно работать. Другие оболочки Linux будут немного отличаться в том, как они назначают переменные среды.
export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages
Проблема в том, что /usr/local/lib/python2.7/site-packages
отсутствует в вашем списке путей по умолчанию. Чтобы убедиться в этом, выполните следующие команды:
import sys
for pth in sys.path:
print pth
Вы получите список каталогов, в которых ищутся модули. Как вы, вероятно, не будете иметь /usr/local/lib/python2.7/site-packages
в списке у вас есть следующие опции:
Удалить
nltk
и установите его снова в один из каталогов (обратите внимание, что, например, в Debian это может быть/usr/local/lib/python2.7/dist-packages
,При каждом запуске установите переменную PYTHONPATH:
export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages
(вы можете поместить эту команду в$HOME/.bashrc
файл).Положить файл
local.pth
в/usr/lib/python2.7/site-packages
или же/usr/lib/python2.7/dist-packages
(в зависимости от вывода скрипта выше), который содержит одну строку:/usr/local/lib/python2.7/site-packages
Это добавит этот каталог в ваш список путей по умолчанию навсегда.
(Этот рекомендуется только для некоторых редко используемых нестандартных пакетов, установленных в каком-то странном месте, что, вероятно, не ваш случай) В начале вашего сценария (до
import nltk
) добавьте следующий код:import sys sys.path.append("/usr/local/lib/python2.7/site-packages")