Как импортировать модули в pycharm?
В PyCharm я добавил среду Python /usr/bin/python
. Тем не менее,
from gnuradio import gr
не работает как ссылка undefined. Однако он отлично работает в интерпретаторе Python из командной строки.
GNURadio отлично работает с питоном вне Pycharm. Все установлено и настроено так, как я хочу.
Gnuradio находится в /usr/local/lib/python2.7/site-packages/gnuradio
также:
PYTHONPATH =/USR/локальные/Library/python2.7/сайт-пакеты:/usr/local/lib/python2.7/site-packages/gnuradio
Ответы
Ответ 1
Добавление пути
Перейдите в Файл → Настройки → Настройки проекта → Интерпретатор проекта.
Затем нажмите настроить интерпретатор и перейдите на вкладку "Пути".
![pycharm path tab]()
Нажмите кнопку + в области "Пути". Вы можете указать путь к модулю, который вы хотите, чтобы он распознал.
Но я не знаю путь..
Откройте интерпретатор python, куда вы можете импортировать модуль.
>> import gnuradio
>> gnuradio.__file__
"path/to/gnuradio"
Чаще всего у вас будет структура папок, подобная этой:
foobarbaz/
gnuradio/
__init__.py
other_file.py
Вы хотите добавить foobarbaz к пути здесь.
Ответ 2
Вам не нужно изменять путь напрямую, либо через переменные окружения, либо sys.path
. Если вы используете os (ex. apt-get
) или pip
в virtualenv, пакеты будут установлены в местоположение уже на пути.
В вашем примере GNU Radio устанавливается в стандартное расположение site-packages
Python 2, которое уже находится на пути. Указание PyCharm на правильном интерпретаторе достаточно; если нет, есть что-то еще неправильное, что не очевидно. Возможно, что /usr/bin/python
не указывает на тот же интерпретатор, в который была установлена GNU Radio; попробуйте указать в двоичном формате python2.7
. Или, например, PyCharm плохо относился к обнаружению пакетов; File > Invalidate Caches > Invalidate and Restart
сообщит об этом для повторного сканирования.
В этом ответе рассказывается, как настроить среду проекта, установить пакеты в разных сценариях и настроить PyCharm. Я несколько раз ссылаюсь на Руководство пользователя Python Packaging, написанное той же группой, которая поддерживает официальные инструменты упаковки Python.
Правильный способ разработки приложения Python - с помощью virtualenv. Пакеты и версия установлены без использования системы или других проектов. PyCharm имеет встроенный интерфейс для создания виртуальных и установочных пакетов. Или вы можете создать его из командной строки, а затем указать PyCharm на нем.
$ 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.
![выбрать env]()
![вручную найти env]()
В некоторых случаях, например, с GNU Radio, нет пакета для установки с помощью pip
, пакет был установлен в системном масштабе, когда вы устанавливаете остальную часть GNU Radio (например, apt-get install gnuradio
). В этом случае вы все равно должны использовать virtualenv, но вам нужно будет узнать об этом системном пакете.
$ python2 -m virtualenv --system-site-packages env
К сожалению, это выглядит немного грязно, потому что все системные пакеты теперь появятся в вашем env, но они просто ссылки, вы все равно можете безопасно устанавливать или обновлять пакеты без использования системы.
В некоторых случаях у вас будет несколько локальных пакетов, которые вы разрабатываете, и захотите, чтобы один проект использовал другой пакет. В этом случае вы можете подумать, что вы должны добавить локальный пакет к другому пути к проекту, но это не так. Вы должны установить свой пакет в режиме разработки. Все это требует добавления файла setup.py
к вашему пакету, который потребуется в любом случае для правильного распространения и развертывания пакета позже.
Минимальный setup.py
для вашего первого проекта:
from setuptools import setup, find_packages
setup(
name='mypackage',
version='0.1',
packages=find_packages(),
)
Затем установите его во второй проект env:
$ pip install -e /path/to/first/project
Ответ 3
Для меня это просто вопрос маркировки каталога как исходного корня.
Ответ 4
Моя версия PyCharm Professional edition 3.4, а часть Добавление пути отличается.
Вы можете перейти к "Предпочтениям" → "Переводчик проекта". Выберите кнопку инструмента в правом верхнем углу.
Затем выберите "Подробнее..." → "Показать путь для выбранного интерпретатора" → "Добавить". Затем вы можете добавить путь.
Ответ 5
Добавить путь в PyCharm 2017
Файл → Настройки (или Ctrl + Alt + S) → Проект → Интерпретатор проекта
Показать все
Выберите нижний значок справа
Нажмите на кнопку "плюс", чтобы добавить новый путь к вашему модулю.
Ответ 6
Для PyCharm Community Edition 2016.3.2 это:
"Project Interpreter" → Значок правой правой настройки → "Дополнительно".
Тогда на правой стороне должен быть значок пакетов. При зависании над ним следует сказать "Показать пути для выбранного интерпретатора". Нажмите на нее.
Затем нажмите кнопку "Добавить" или нажмите "alt + insert", чтобы добавить новый путь.
Ответ 7
В Project Explorer вы можете щелкнуть правой кнопкой мыши папку, в которой находится модуль, и установить его как "Источник".
Он будет проанализирован в индексе для завершения кода, а также для других элементов.
Ответ 8
НЕ изменяйте путь интерпретатора.
Вместо этого измените структуру проекта:
Файл → Настройки → Проект → Структура проекта → Добавить корень контента
Ответ 9
Как быстрое грязное исправление, это сработало для меня: добавив эти 2 строки перед проблемным импортом:
import sys
sys.path.append('C:\\Python27\\Lib\site-packages')
Ответ 10
Я новичок в PyCharm (использую 2018.3.4 CE) и Python, поэтому я старательно пытался следовать каждому из приведенных выше предложений, чтобы получить доступ к пакету PIL (Pillow), который, как я знал, был в system-site-packages. Никто не работал. Я собирался сдаться ночью, когда случайно заметил файл venv/pyvenv.cfg под моим проектом в окне Project Explorer. Я нашел строку "include-system-site-packages = false" в этом файле и изменил ее на "true". Задача решена.
Ответ 11
Скачать anaconda
https://anaconda.org/
после завершения установки anaconda...
Перейдите в Настройки → Настройки проекта → Переводчик проекта.
Затем перейдите на вкладку "Пути" и выполните поиск /anaconda/bin/python
нажмите "Применить"
![enter image description here]()