En mi Raspberry Pi lo instalé libusb
y a pyusb
través de sudo apt-get install libusb-dev python-usb
.
Pero ejecutar un código de Python ( pyrow , para leer datos de una máquina de remo) me da este error en import usb.core
:
ImportError: ningún módulo llamado core
Este error sugiere que no lo instalé pyusb
correctamente, así que lo volví a hacer manualmente (descargándolo y ejecutándolo sudo python setup.py install
), pero esto no lo solucionó.
Creo que el problema podría tener algo que ver con el directorio /usr/local/lib/python2.7/dist-packages/usb
: en mi computadora portátil Ubuntu esta carpeta existe y contiene (entre otros) core.py
, pero la carpeta en la Raspberry Pi parece no existir. ls
en el directorio padre enumera la carpeta, pero montarla no funciona ...
¿Cómo soluciono este problema? ¿Tengo que usar una versión específica de pyusb en Raspberry Pi?
- Hardware: Raspberry Pi modelo B
- SO: Raspbian Wheezy (compilación 09/02/2013)
pyusb
lo que instaló anteriormente. Si bien es fácil para el paquete que instalóapt-get
, puede ser más difícil para el paquete instalado manualmente.pyusb
la biblioteca viene en dos versiones:La distribución de Debian solo contiene la
stable
versión y esta es la que ha instalado usando elapt-get
comando.Ahora
pyrow
está intentando importar lousb.core
que solo existe en la1.0.x
versión de la biblioteca. Y, de hecho, elpyrow's
sitio web afirma que necesita la versión 1.0 de pyusb. Es por eso que tienes problemas.Entonces, para usarlo
pyrow
, necesitapyusb
1.0.x, que no está disponible en Debian, por lo que no puede instalarlo usando apt-get. La solución más fácil a este problema es lo que sugirió @Stevelrwin: el usopip install
instalará la rama 1.0.x de pyusb. Es posible que desee utilizarlovirtualenv
si no desea contaminar su sistema con algunas bibliotecas que no provienen de paquetes Debian.fuente
Pruebe esto, esto funcionó para mi en un Raspberry PI 3b + para Python 3.5.3
después de ejecutar que el código de importación usb.core funcionó
(Raspberry PI 3b + - Python 3.5.3 - 2019)
fuente
Eureka! He resuelto el problema en Raspberry Pi, que tiene las versiones Python 2.7 y 3.4.2 instaladas.
Paso 1: Copie las bibliotecas usb de python de la versión 2.7 a la versión 3.4.
Había dos carpetas en /usr/local/lib/python/2.7/dist-packages/
pyusb-1.0.0.egg-info, y
USB
Se copiaron en /usr/local/lib/python/3.4/dist-packages/
Paso 2: Use easy_install para identificar la versión de Python 3.4 a la herramienta de instalación de Python llamada línea de comando "pip": sudo easy_install-3.4 pip
Paso 3: Instale la biblioteca pyusb en la línea de comando Python versión 3.4: sudo pip3.4 install pyusb
Ahora la biblioteca pyusb debe instalarse en Python Versión 3.4 en lugar de (o además de) la versión predeterminada, que es la versión 2.7
fuente
Tengo el mismo problema.
Multaba la causa, al menos en mi máquina:
Raspberry pi viene con dos instalaciones de Python: 2.xy 3.x, pero el script de instalación de pyusb instala el software en la versión 2.x por defecto.
Entonces, cuando tratamos de usarlo en la versión 3.x, el error: "ImportError: ningún módulo llamado core" se eleva automáticamente.
No tengo una solución por ahora, pero creo que no debería ser demasiado complicado de encontrar.
fuente