En PyCharm , agregué el entorno de Python /usr/bin/python. Sin embargo,

from gnuradio import gr

falla como una referencia indefinida . Sin embargo, funciona bien en el intérprete de Python desde la línea de comandos.

GNURadio funciona bien con python fuera de Pycharm. Todo está instalado y configurado como yo quiero.

Gnuradio se encuentra en/usr/local/lib/python2.7/site-packages/gnuradio

También:

PYTHONPATH=/usr/local/lib/python2.7/site-packages:/usr/local/lib/python2.7/site-packages/gnuradio

respuesta

Agregar una ruta

Vaya a Archivo → Configuración → Configuración del proyecto → Intérprete del proyecto.

Luego presione configurar intérprete y navegue a la pestaña "Rutas".

Pestaña de ruta de pycharm

Presione el botón + en el área Rutas. Puede poner la ruta al módulo que le gustaría que reconozca.

Pero no se el camino..

Abra el intérprete de python donde puede importar el módulo.

>> import gnuradio
>> gnuradio.__file__
"path/to/gnuradio"

Lo más común es que tenga una estructura de carpetas como esta:

foobarbaz/
  gnuradio/
    __init__.py
    other_file.py

Desea agregar foobarbaz a la ruta aquí.

Nunca debería necesitar modificar la ruta directamente, ya sea a través de variables de entorno o sys.path. Ya sea que use el sistema operativo (p. ej. apt-get), o pipen un virtualenv, los paquetes se instalarán en una ubicación que ya se encuentra en la ruta.

En su ejemplo, GNU Radio está instalado en la ubicación estándar del sistema Python 2 site-packages, que ya está en la ruta. Señalar PyCharm al intérprete correcto es suficiente; si no es así, hay algo más mal que no es evidente. Puede ser que /usr/bin/pythonno apunte al mismo intérprete en el que se instaló GNU Radio; intente apuntar específicamente al python2.7binario. O bien, PyCharm solía ser algo malo para detectar paquetes; File > Invalidate Caches > Invalidate and Restartle diría que vuelva a escanear.

Esta respuesta cubrirá cómo debe configurar un entorno de proyecto, instalar paquetes en diferentes escenarios y configurar PyCharm. Me refiero varias veces a la Guía del usuario de empaquetado de Python , escrita por el mismo grupo que mantiene las herramientas de empaquetado oficiales de Python.


La forma correcta de desarrollar una aplicación de Python es con un virtualenv. Los paquetes y la versión se instalan sin afectar el sistema u otros proyectos. PyCharm tiene una interfaz integrada para crear un entorno virtual e instalar paquetes. O puede crearlo desde la línea de comando y luego señalarlo con 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

En su proyecto PyCharm, vaya a File > Settings > Project > Project Interpreter. Si usó virtualenvwrappero PyCharm para crear el env, entonces debería aparecer en el menú. De lo contrario, haga clic en el engranaje, elija Add Localy ubique el binario de Python en el env. PyCharm mostrará todos los paquetes en el entorno seleccionado.

elige un entorno

localizar manualmente env


En algunos casos, como con GNU Radio, no hay ningún paquete para instalar pip, el paquete se instaló en todo el sistema cuando instaló el resto de GNU Radio (por ejemplo, apt-get install gnuradio). En este caso, aún debe usar un virtualenv, pero deberá informarlo sobre este paquete del sistema.

$ python2 -m virtualenv --system-site-packages env

Desafortunadamente, parece un poco desordenado, porque todos los paquetes del sistema ahora aparecerán en su entorno, pero son solo enlaces, aún puede instalar o actualizar paquetes de manera segura sin afectar el sistema.


En algunos casos, tendrá varios paquetes locales que está desarrollando y querrá que un proyecto use el otro paquete. En este caso, puede pensar que debe agregar el paquete local a la ruta del otro proyecto, pero este no es el caso. Debe instalar su paquete en modo de desarrollo . Todo esto requiere agregar un setup.pyarchivo a su paquete , que será necesario de todos modos para distribuir e implementar correctamente el paquete más adelante.

Minimal setup.pypara tu primer proyecto:

from setuptools import setup, find_packages

setup(
    name='mypackage',
    version='0.1',
    packages=find_packages(),
)

Luego instálelo en el env de su segundo proyecto:

$ pip install -e /path/to/first/project

Para mí, solo era cuestión de marcar el directorio como fuente raíz.

Agregar ruta en PyCharm 2017

Archivo -> Configuración (o Ctrl+Alt+S) -> Proyecto -> Intérprete del proyecto

ingrese la descripción de la imagen aquí Mostrar todo

ingrese la descripción de la imagen aquí Seleccione el icono inferior en el lado derecho

ingrese la descripción de la imagen aquí Haga clic en el botón más para agregar una nueva ruta a su módulo

Mi versión es PyCharm Professional edition 3.4, y la parte Agregar una ruta es diferente.

Puede ir a "Preferencias" --> "Project Interpreter". Elija el botón de herramienta en la esquina superior derecha.

Luego elija "Más..." --> "Mostrar ruta para el intérprete seleccionado" --> "Agregar". Luego puedes agregar una ruta.

NO cambie la ruta del intérprete.

Cambie la estructura del proyecto en su lugar:

File -> Settings -> Project -> Project structure -> Add content root

En PyCharm 2020.1 CE y Professional, puede agregar una ruta al intérprete de Python de su proyecto haciendo lo siguiente:

1) Haga clic en el intérprete en la esquina inferior derecha del proyecto y seleccione 'Configuración del intérprete'

Seleccione la configuración del intérprete

2) Haga clic en el botón de configuración a la derecha del nombre del intérprete y seleccione 'Mostrar todo':

Seleccione Mostrar todos los intérpretes

3) Asegúrese de que el intérprete de su proyecto esté seleccionado y haga clic en el quinto botón en la barra de herramientas inferior, 'mostrar rutas para el intérprete seleccionado':

Mostrar rutas para el intérprete de Python seleccionado

4) Haga clic en el botón '+' en la barra de herramientas inferior y agregue una ruta a la carpeta que contiene su módulo:

ingrese la descripción de la imagen aquí

Para PyCharm Community Edition 2016.3.2 es:

"Project Interpreter" -> Icono de configuración superior derecho -> "Más".

Luego, en el lado derecho, debería haber un ícono de paquetes. Al pasar el cursor sobre él, debería decir "Mostrar rutas para el intérprete seleccionado". Pinchalo.

Luego haga clic en el botón "Agregar" o presione "alt+insertar" para agregar una nueva ruta.

Como solución rápida y sucia, esto funcionó para mí: agregar estas 2 líneas antes de la importación problemática:

import sys
sys.path.append('C:\\Python27\\Lib\site-packages')

En el Explorador de proyectos, puede hacer clic derecho en la carpeta donde se encuentra el módulo y configurarlo como 'Fuente'.

Se analizará en el Índice para completar el código, así como otros elementos.

Soy nuevo en PyCharm (usando 2018.3.4 CE) y Python, así que traté de seguir cada una de las sugerencias anteriores para acceder al paquete PIL (Almohada) que sabía que estaba en system-site-packages. Ninguno funcionó. Estaba a punto de rendirme por la noche cuando noté el archivo venv/pyvenv.cfg debajo de mi proyecto en la ventana Project Explorer. Encontré la línea "include-system-site-packages = false" en ese archivo y la cambié a "true". Problema resuelto.

En mi PyCharm 2019.3, seleccione el proyecto, luego Archivo ---> Configuración, luego Proyecto: YourProjectName, en 'Project Interpreter', haga clic en el intérprete o configuración, ---> Mostrar todo... ---> Seleccione el actual intérprete ---> Mostrar rutas para el intérprete seleccionado ---> luego haga clic en 'Agregar' para agregar su biblioteca, en mi caso, es un paquete de rueda

Descargar anaconda https://anaconda.org/

una vez que haya terminado de instalar anaconda ...

Vaya a Configuración -> Configuración del proyecto -> Intérprete del proyecto.

Luego navegue a la pestaña "Rutas" y busque /anaconda/bin/python

haga clic en aplicar

ingrese la descripción de la imagen aquí