未定义的变量:SerialException

4 投票
1 回答
20613 浏览
提问于 2025-04-17 13:32

我正在使用pySerial这个库,让一个Python脚本从Arduino上记录数据。我想处理一个叫做SerialException的错误,这个错误会在脚本无法连接到你提供的端口时出现。但是Eclipse提示我“未定义的变量:SerialException”。我是不是忘记导入什么东西了?

代码:

try:
    ser = serial.Serial(port, 9600)
    connected = 1
except SerialException:
    print "No connection to the device could be established"

1 个回答

14

你可能想要的是:

except serial.SerialException:
   ...

在Python中,Exception是从Exception这个类派生出来的。所以,当一个模块或包定义了自己的自定义异常时,它们通常会像其他类或函数一样被导入到模块或包的命名空间中。也就是说,如果你在文件的顶部加上:

from serial import SerialException

也可能会解决问题。

撰写回答