如何在Python、os linux、usbtmc中忽略操作系统错误:[Errno 2]

如何在Python、os linux、usbtmc中忽略操作系统错误:[Errno 2],python,linux,compiler-errors,usb,Python,Linux,Compiler Errors,Usb,我正在使用python通过usbmtc与示波器和波形发生器进行通信,有时我的usb端口正在更改 所以我写了一个函数来检测当前设备: 但是,如果我没有连接设备usbtmc1,则会出现以下错误: 是否有忽略错误的选项?在Python中使用内置的try to ignore errors 结合日志记录,您可以将错误记录在屏幕上或文件中 import logging for x in range(0, 3): dev= '/dev/usbtmc' + str(x) try:

我正在使用python通过usbmtc与示波器和波形发生器进行通信,有时我的usb端口正在更改

所以我写了一个函数来检测当前设备:

但是,如果我没有连接设备usbtmc1,则会出现以下错误:

是否有忽略错误的选项?

在Python中使用内置的try to ignore errors

结合日志记录,您可以将错误记录在屏幕上或文件中

import logging

for x in range(0, 3):
    dev= '/dev/usbtmc' + str(x)
    try:
        currentUsb = usb.tmc(dev)
        currentUsb.write("*IDN?")
        name = currentUsb.read(300)
        if name.find('DSO') >-1:
            scope= usb.tmc(dev)
            print 'scope '

        elif name.find('33621A') >-1:
            waveform = usb.tmc(dev)
            print 'waveform'
    except OSError:
        logging.info('Something is wrong')
        pass

@SiddheshMhatre,通行证是正确的,代码的第一部分正在工作。所以我得到的是:波形,然后是错误非常感谢你的回答,只是尝试了你的代码,但它没有工作。但是你给了我一个很好的指针我能做什么!我的代码在if循环之前被压碎,在下面的行中:currentUsb=usb。tmcdev@IvanShorokhov请重试该代码。我已经修复了它。@IvanShorokhov日志记录。信息“有问题”是可选的,您可以在它前面添加注释,作为日志记录。信息“有问题”@IvanShorokhov没问题,很高兴我能提供帮助!