¿Cómo importo módulos en pycharm?

En PyCharm , he agregado el entorno 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 lo 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

Añadiendo un camino

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 pycharm path

Presiona el botón + en el área de Senderos. Puedes poner la ruta al módulo que quieres que reconozca.

Pero no conozco 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 tengas una estructura de carpetas como esta:

 foobarbaz/ gnuradio/ __init__.py other_file.py 

Quieres añadir foobarbaz al camino 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 (por ejemplo, apt-get ) o pip en un virtualenv, los paquetes se instalarán en una ubicación que ya se encuentre en la ruta.

En su ejemplo, GNU Radio se instala en la ubicación estándar site-packages Python 2, que ya se encuentra en la ruta. Basta con señalar a PyCharm al intérprete correcto; Si no es así, hay algo más que no es aparente. Puede ser que /usr/bin/python no apunte al mismo intérprete en el que se instaló GNU Radio; Intenta apuntar específicamente al binario python2.7 . O, PyCharm solía ser algo malo en la detección de paquetes; File > Invalidate Caches > Invalidate and Restart le indicará 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 Python Packaging , escrita por el mismo grupo que mantiene las herramientas oficiales de empaquetado de Python.


La forma correcta de desarrollar una aplicación Python es con un virtualenv. Los paquetes y la versión se instalan sin afectar el sistema u otros proyectos. PyCharm tiene una interfaz incorporada para crear un virtualenv e instalar paquetes. O puede crearlo desde la línea de comandos y luego señalarlo a 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 de PyCharm, vaya a File > Settings > Project > Project Interpreter . Si usó virtualenvwrapper o PyCharm para crear el env, entonces debería aparecer en el menú. De lo contrario, haga clic en el engranaje, elija Add Local y localice el binario de Python en la env. PyCharm mostrará todos los paquetes en el env seleccionado.

elige un env

ubicar manualmente env


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

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

Lamentablemente, parece un poco desordenado, ya que todos los paquetes del sistema aparecerán ahora en su env, 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 deseará que un proyecto use el otro paquete. En este caso, puede pensar que tiene que 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 lo que esto requiere es agregar un archivo setup.py a su paquete , que será necesario de todos modos para distribuirlo e implementarlo correctamente más adelante.

setup.py mínimo para tu primer proyecto:

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

Luego instálalo en el env de tu segundo proyecto:

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

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

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

Puede ir a “Preferencias” -> “Intérprete del proyecto”. Elija el botón de la herramienta en la esquina superior derecha.

Luego elija “Más …” -> “Mostrar ruta para el intérprete seleccionado” -> “Agregar”. A continuación, puede agregar un camino.

Añadir ruta en PyCharm 2017

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

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

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

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

Para PyCharm Community Edition 2016.3.2 es:

“Project Interpreter” -> icono de configuración superior derecha -> “Más”.

Luego en el lado derecho debería haber un icono de paquetes. Cuando se desplaza sobre él, debe 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.

En el Explorador de proyectos, puede hacer clic con el botón derecho en la carpeta donde se encuentra el módulo y establecerlo como ‘Fuente’.

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

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') 

Descargar anaconda https://anaconda.org/

Una vez terminada la instalación de anaconda …

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

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

haga clic en aplicar

introduzca la descripción de la imagen aquí

Soy nuevo en PyCharm (con 2018.3.4 CE) y en Python, así que intenté seguir cada una de las sugerencias anteriores para acceder al paquete PIL (Pillow) que sabía que estaba en los paquetes del sitio del sistema. Ninguno funciono Estaba a punto de rendirme para pasar la noche cuando noté el archivo venv / pyvenv.cfg debajo de mi proyecto en la ventana del Explorador de proyectos. Encontré la línea “include-system-site-packages = false” en ese archivo y por eso lo cambié a “true”. Problema resuelto.