¿Cómo uso los paquetes instalados en PyCharm?
En PyCharm agregué el entorno Python /usr/bin/python
y GNU Radio funciona bien fuera de PyCharm. Sin embargo, importarlo falla en PyCharm con una referencia indefinida .
from gnuradio import gr
GNU Radio está ubicado en /usr/local/lib/python2.7/site-packages/gnuradio
y lo agregué al archivo PYTHONPATH
.
Mi PYTHONPATH
es /usr/local/lib/python2.7/site-packages:/usr/local/lib/python2.7/site-packages/gnuradio
.
Agregar una ruta
Vaya a Archivo → Configuración → Configuración del proyecto → Intérprete del proyecto.
Luego presione configurar intérprete y navegue hasta la pestaña "Rutas".
Presione el botón + en el área Rutas. Puede poner la ruta al módulo que desea 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 agregar foobarbaz a la ruta aquí.
Nunca debería necesitar modificar la ruta directamente, ya sea a través de variables de entorno o archivos sys.path
. Ya sea que use el sistema operativo (por ejemplo apt-get
), o pip
en un entorno virtual, 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 site-packages
ubicación estándar del sistema Python 2, que ya se encuentra en la ruta. Apuntar 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/python
no apunte al mismo intérprete en el que se instaló GNU Radio; intente apuntar específicamente al python2.7
binario. O PyCharm solía ser algo malo detectando paquetes; File > Invalidate Caches > Invalidate and Restart
Le 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 Python es con un entorno virtual. Los paquetes y la versión se instalan sin afectar el sistema ni otros proyectos. PyCharm tiene una interfaz incorporada para crear un entorno virtual e instalar paquetes. O puede crearlo desde la línea de comando y luego apuntarle 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ó virtualenvwrapper
PyCharm para crear el entorno, entonces debería aparecer en el menú. De lo contrario, haga clic en el engranaje, elija Add Local
y ubique el binario de Python en el entorno. PyCharm mostrará todos los paquetes en el entorno seleccionado.
En algunos casos, como con GNU Radio, no hay ningún paquete para instalar pip
; el paquete se instaló en todo el sistema cuando instala el resto de GNU Radio (por ejemplo, apt-get install gnuradio
). En este caso, aún deberías usar un virtualenv, pero necesitarás informarle de este paquete del sistema.
$ python2 -m virtualenv --system-site-packages env
Desafortunadamente, parece un poco complicado, 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 utilice el otro paquete. En este caso, podría pensar que debe agregar el paquete local a la ruta del otro proyecto, pero no es así. Debes instalar tu paquete en modo de desarrollo . Todo lo que esto requiere es agregar un setup.py
archivo a su paquete , que será necesario de todos modos para distribuir e implementar correctamente el paquete más adelante.
Mínimo setup.py
para tu primer proyecto:
from setuptools import setup, find_packages
setup(
name='mypackage',
version='0.1',
packages=find_packages(),
)
Luego instálelo en el entorno de su segundo proyecto:
$ pip install -e /path/to/first/project
Para mí, era sólo cuestión de marcar el directorio como raíz de origen.
Agregar ruta en PyCharm 2017
Archivo -> Configuración (o Ctrl+Alt+S) -> Proyecto -> Intérprete de proyecto
Mostrar todo
Seleccione el icono inferior en el lado derecho
Haga clic en el botón más para agregar una nueva ruta a su módulo
Mi versión es PyCharm Professional edición 3.4 y la parte Agregar una ruta es diferente.
Puede ir a "Preferencias" --> "Intérprete de proyectos". 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.