Как мне использовать установленные пакеты в PyCharm?
В PyCharm я добавил среду Python /usr/bin/python и GNU Radio отлично работает вне PyCharm. Однако импортировать его в PyCharm не удается с неопределенной ссылкой.
from gnuradio import gr
GNU Radio находится по адресу /usr/local/lib/python2.7/site-packages/gnuradio и я добавил его в PYTHONPATH.
Мой PYTHONPATH это /usr/local/lib/python2.7/site-packages:/usr/local/lib/python2.7/site-packages/gnuradio.
Переведено автоматически
Ответ 1
Добавление пути
Перейдите в Файл → Настройки → Настройки проекта → Интерпретатор проекта.
Затем нажмите configure interpreter и перейдите на вкладку "Пути".
Нажмите кнопку + в области Путей. Вы можете указать путь к модулю, который вы хотите, чтобы он распознал.
Но я не знаю пути..
Откройте интерпретатор python, откуда вы можете импортировать модуль.
Чаще всего у вас будет структура папок, подобная этой:
foobarbaz/ gnuradio/ __init__.py other_file.py
Вы хотите добавить foobarbaz в путь здесь.
Ответ 2
Вам никогда не потребуется изменять путь напрямую, ни через переменные окружения, ни sys.path. Независимо от того, используете ли вы ОС (например, apt-get) или pip в virtualenv, пакеты будут установлены в папку, уже указанную в path.
В вашем примере GNU Radio устанавливается в стандартную папку системного Python 2 site-packages, которая уже находится в path. Достаточно указать PyCharm на правильный интерпретатор; если это не так, значит, что-то еще не так, что не очевидно. Возможно, что /usr/bin/python не указывает на тот же интерпретатор, в котором было установлено GNU Radio; попробуйте указать конкретно на python2.7 двоичный файл. Или, раньше PyCharm плохо распознавал пакеты; File > Invalidate Caches > Invalidate and Restart посоветовал бы ему выполнить повторное сканирование.
В этом ответе будет рассказано о том, как следует настраивать среду проекта, устанавливать пакеты в различных сценариях и настраивать PyCharm. Я несколько раз ссылаюсь на Руководство пользователя по упаковке Python, написанное той же группой, которая поддерживает официальные инструменты упаковки Python.
$ cd MyProject $ python2 -m virtualenv env $ . env/bin/activate $ pip install -U pip setuptools # get the latest versions $ pip install flask # install other packages
В вашем проекте PyCharm перейдите по ссылке File > Settings > Project > Project Interpreter. Если вы использовали virtualenvwrapper или PyCharm для создания env, то это должно отображаться в меню. Если нет, щелкните шестеренку, выберите Add Local и найдите двоичный файл Python в env. PyCharm отобразит все пакеты в выбранной env.
В некоторых случаях, например, с GNU Radio, нет пакета для установки pip, пакет был установлен в масштабах всей системы при установке остальной части GNU Radio (например. apt-get install gnuradio). В этом случае вам все равно следует использовать virtualenv, но вам нужно будет уведомить его об этом системном пакете.
К сожалению, это выглядит немного неаккуратно, потому что все системные пакеты теперь будут отображаться в вашем env, но это всего лишь ссылки, вы все равно можете безопасно устанавливать или обновлять пакеты, не затрагивая систему.
В некоторых случаях у вас будет несколько локальных пакетов, которые вы разрабатываете, и вы захотите, чтобы один проект использовал другой пакет. В этом случае вы можете подумать, что вам нужно добавить локальный пакет в путь к другому проекту, но это не так. Вы должны установить свой пакет в режиме разработки. Все, что для этого требуется, - это добавить setup.py файл в ваш пакет, который в любом случае потребуется для правильного распространения и развертывания пакета позже.