连接外部硬件失败时应抛出什么Python异常?
我正在写一些Python代码,这段代码使用一个库来通过USB与外部硬件进行通信。当这个硬件库无法连接到设备时,它会返回False;如果连接成功,则返回True。
我想检查这个返回值,并用它来触发一个异常,这样做会更符合Python的风格。那么,抛出哪种类型的异常比较合适呢?
1 个回答
5
这是一个 IOError
。根据文档的说明:
当进行输入输出操作(比如打印语句、内置的
open()
函数或者文件对象的方法)时,如果因为与输入输出相关的原因导致操作失败,就会引发这个错误,比如“找不到文件”或者“磁盘已满”。
你可能想把这个错误放在你自己定义的异常中,比如:
class ExternalDeviceNotFound(IOError): pass
然后抛出这个异常。这样调用这个代码的部分就有更多的选择来处理这个错误。