Estoy siguiendo el tutorial (http://pyusb.sourceforge.net/docs/1.0/tutorial.html)
Estoy en Windows XP SP3, mi versión de Python es 2.7 y descargué e instalé Pyusb-1.0.0-a1.zip
Y libusb-win32-bin-1.2.4.0.zip
import usb
Funciona bien
Pero
import usb.core
No funciona en absoluto
Dice
Traceback (most recent call last):
File "D:\py\usb.py", line 1, in <module>
from usb import core
File "D:\py\usb.py", line 1, in <module>
from usb import core
ImportError: cannot import name core
¿alguna solución?
¡Gracias!
PD. "desde el núcleo de importación usb" esta marca
Traceback (most recent call last):
File "D:\py\usb.py", line 1, in <module>
from usb import core
File "D:\py\usb.py", line 1, in <module>
from usb import core
ImportError: cannot import name core
El código fuente completo está aquí
from usb import core
#find device
dev = usb.core.find(idVendor=0x1516, idProduct=0x8628)
#found?
if dev is None :
raise ValueError('device not found')
#set the active config. with no args, the first config will be the active one
dev.set_configuration()
#get an end point instance
ep = usb.util.find_descriptor(
dev.get_interface_altsetting(), #first interface
#match the first Out Endpoint
custom_match = \
lambda e: \
usb.util.endpoint_direction(e.bEndpointAddress) == \
usb.util.ENDPOINT_OUT)
assert ep is not None
while(1):
ep.write(0x5553424350DDBC880000000000000600000000000000000000000000000000)
ep.write(0x5553425350ddbc880000000000)
4 respuestas
En ambos casos el error es:
Traceback (most recent call last):
File "D:\py\usb.py", line 1, in <module>
Lo que significa que tiene el archivo usb.py
en PATH
antes (probablemente en .
que es D:\py\
en este caso) que la ruta a los módulos de Python.
¿Instalaste este módulo correctamente? Intente cambiar el nombre de este archivo usb.py
a otro, verá si el error se convierte en "ImportError: ningún módulo llamado usb". Compruebe también la ruta de instalación de Python (algo así como C:\Python27\
) para la carpeta usb, es decir, <python_path>\lib\site-packages\usb\core.py
.
Supongo que "D: \ py \ usb.py" es el nombre de su programa de prueba py.
Desafortunadamente, esto confunde al compilador py debido al hecho de que usb también es el nombre del módulo.
Cámbielo en usbtest.py y todo funciona
Su pregunta dice que está usando 1.0, pero tuve los mismos síntomas que usted, así que lo pondré aquí para futuros usuarios de motores de búsqueda.
Si puede import usb
pero no import usb.core
puede estar ejecutando python-usb 0.x en lugar de 1.0.
https://github.com/walac/pyusb
Para comprender dónde Python busca importar su módulo , puede ejecutar el siguiente código:
import sys
print(sys.path)
Esto le mostrará una lista de los nombres de directorio que Python busca para su módulo para importar :)
Preguntas relacionadas
Nuevas preguntas
python
Python es un lenguaje de programación multipropósito, de tipificación dinámica y de múltiples paradigmas. Está diseñado para ser rápido de aprender, comprender y usar, y hacer cumplir una sintaxis limpia y uniforme. Tenga en cuenta que Python 2 está oficialmente fuera de soporte a partir del 01-01-2020. Aún así, para preguntas de Python específicas de la versión, agregue la etiqueta [python-2.7] o [python-3.x]. Cuando utilice una variante de Python (por ejemplo, Jython, PyPy) o una biblioteca (por ejemplo, Pandas y NumPy), inclúyala en las etiquetas.