Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python PyUSB ValueError:没有可用的后端_Python_Python 2.7_Windows 7_Usb_Pyusb - Fatal编程技术网

Python PyUSB ValueError:没有可用的后端

Python PyUSB ValueError:没有可用的后端,python,python-2.7,windows-7,usb,pyusb,Python,Python 2.7,Windows 7,Usb,Pyusb,我正在Win7操作系统上运行Python2.7.8。我正在尝试通过PyUSB与USB设备(Numato 32通道GPIO设备)通信 我从URL下载了walac-pyusb-7071ad3: 我在收到“ValueError:没有可用的后端”时停止。Python专家能告诉我哪里出了问题吗 代码如下: import sys import usb import usb.core import usb.util import usb.backend.libusb1 backend = usb.backe

我正在Win7操作系统上运行Python2.7.8。我正在尝试通过PyUSB与USB设备(Numato 32通道GPIO设备)通信

我从URL下载了walac-pyusb-7071ad3:

我在收到“ValueError:没有可用的后端”时停止。Python专家能告诉我哪里出了问题吗

代码如下:

import sys
import usb
import usb.core
import usb.util
import usb.backend.libusb1

backend = usb.backend.libusb1.get_backend(find_library=lambda C:'\Python27')
numato = usb.core.find(idVendor=00000006,idProduct = 00000000, backend=backend)
以下是Python错误消息:

Traceback (most recent call last):
  File "C:\Python_Yang\PyUSBNumato.py", line 19, in <module>
    numato = usb.core.find(idVendor=00000006,idProduct = 00000000, backend=backend)
  File "C:\Python_Yang\usb\core.py", line 1199, in find
    raise ValueError('No backend available')
ValueError: No backend available
回溯(最近一次呼叫最后一次):
文件“C:\Python\u-Yang\PyUSBNumato.py”,第19行,在
numato=usb.core.find(idVendor=00000006,idProduct=00000000,backend=backend)
文件“C:\Python\u-Yang\usb\core.py”,第1199行,在find中
raise VALUERROR('没有可用的后端')
ValueError:没有可用的后端

我遇到了相同的错误,但是我没有成功地使用
查找库(
类型错误:get\u backend()得到了一个意外的关键字参数“find\u library”
)。 我想,虽然你没有说,
backend
是无效的(
None

在路径
C:\Python27
中是否有libusb1实现?我想您没有将其安装在Python的文件夹中,如果是的话,您的答案是:

否则,在不使用
find_library
的情况下,必须在
PATH
环境变量中提供libusb1实现。我是这样做的(您可以用您的位置替换
os.getcwd()
):


我遇到了这个问题,我切换了python libusb包装器,它就不见了:

我做到了: -下载并安装libusb-win32-devel-filter-1.2.6.0.exe。它应该会起作用

发件人:


对我来说真的很有用。

你好,利维:你猜得对。我没有安装libusb-1.0。我将安装它并再次尝试PyUSB。谢谢你的回答。这里有一些更新:最终,我发现USB设备不是真正的USB设备,而是RS-232仿真设备。现在这个问题通过使用pyserial进行通信解决了。相关问题:很抱歉劫持注释,但是我在运行您的函数时遇到了一些问题,因为未定义
usb.backend.libusb01
dir(usb.backend)['IBackend'、'uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
。我已经从walac的回购协议中安装了pyusb 1.0,并且已经安装了libusb-1.0。我有什么遗漏吗?
libusb01
在最新版本的
pyusb
中被重命名为
libusb0
,还请注意,
libusb0
代表
libusb-0.1
,以及
libusb1
代表
libusb-1.0
()。此外,即使版本为1.2.6,也要注意“libusb-win32是USB库libusb-0.1的端口”。我更改了代码以反映更改,谢谢!可能是重复的
def get_backend_libusb01():
    libusb01_location = os.getcwd()

    # load-library (ctypes.util.find_library) workaround: also search the current folder
    is_current_folder_in_search_path = True
    if None == usb.backend.libusb0.get_backend():
        is_current_folder_in_search_path = libusb01_location in os.environ['PATH']
        if not is_current_folder_in_search_path:
            os.environ['PATH'] += os.pathsep + libusb01_location

    backend = usb.backend.libusb0.get_backend()

    if not is_current_folder_in_search_path:
        os.environ['PATH'] = os.environ['PATH'].replace(os.pathsep + libusb01_location, "")

    return backend