电路 Python MQTT 异常块

问题描述

我正在使用 Adafruit Circuit Python MQTT library 并试图捕捉正在生成错误

   while True:
    try:
        # Poll the message queue
        mqtt_client.loop()
    except (ValueError,RuntimeError,MMQTTException) as e:
        print("Failed to get data,retrying\n",e)
      
        mqtt_client.reconnect()
        # continue
    time.sleep(1)

但这会产生以下错误

NameError: name 'MMQTTException' 未定义

任何想法我应该如何正确捕获此错误

该库具有以下错误类。我猜它需要以某种方式暴露出来?

class MMQTTException(Exception):
    """MiniMQTT Exception class."""

    # pylint: disable=unnecessary-pass
    # pass

解决方法

如果你做了类似的事情

import adafruit_minimqtt.adafruit_minimqtt as MQTT

为了能够使用mqtt_client = MQTT.MQTT(...),您需要类似地引用另一个类,如MQTT.MMQTTException

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...