运行python程序报错怎么办?no attribute 'publish_save'
2023-06-148888
AI 快速预览详细
本文解决了在行空板上使用MQTT扩展时遇到的AttributeError: module 'siot' has no attribute 'publish_save'报错。通过更新siot库到最新版本,可以解决该问题。提供了两种更新方法:使用Mind+自动检测和更新库,以及手动下载离线更新包进行更新。更新后,再次运行程序将不再报错。
|
问题描述: 在行空板上用MQTT扩展的时候用到存数据库积木报错,报错信息截图如下: AttributeError: module 'siot' has no attribute 'publish_save' ![]() 这个报错的意思是siot这个库没有publish_save这个函数,因为现在使用的siot库是老版本的,所以解决办法很简单,更新到最新版本即可。 解决问题: 这里提供离线更新的方法。 方法1:使用最新版本Mind+更新siotMind+在连接行空板的时候会检测板子上的siot库版本,如果版本低了则会提示更新,点击更新Mind+会将siot库传到行空板上安装。 1、以Mind+180版本为例,连接行空板 2、连接成功后会提示检测版本中 3、如果版本低了会提示可以升级,点击“立即下载” 4、等待“运行”按钮从转圈圈变为正常则说明升级完成,关闭窗口即可 5、再次运行mqtt程序,可以看到终端不会报publish_save错了 ![]() ![]() ![]() ![]() ![]() 方法2:使用升级包 1、首先下载文件,下载之后解压,得到“离线更新siotPython库.mp”: 离线更新siotPython库.zip![]() 2、打开Mind+,打开菜单“项目”>“打开项目”,选择刚才解压得到的离线更新siotPython库.mp” ![]() 3、打开项目之后,先“连接行空板”成功 ![]() 4、然后点击运行,会提示“开始更新siot库...”,如果没有提示,可以再次点击运行 ![]() 5、等待提示“Successfully installed siot-0.1.5”就说明更新成功了,如果没有提示可以再次尝试。 ![]() 验证问题是否解决 1、打开之前的程序,连接行空板,再次运行程序 不会再报AttributeError: module 'siot' has no attribute 'publish_save'这个错误了,也显示了lib version(库版本)是最新的0.1.5,问题解决。 ![]() 注:如果依然无法解决,可加群探讨。 完 |
















