树莓派3B+运行Flask-MQTT遇ModuleNotFoundError问题求助
解决Flask-MQTT模块找不到的问题
问题原因
从你的安装输出能看出,pip install Flask-MQTT把库装到了Python2.7的目录(/home/pi/.local/lib/python2.7/site-packages),但你实际使用的是Python3.7.3,两个版本的库目录完全分离,所以Python3找不到这个模块。
解决方案
用Python3的包管理器重新安装
执行以下命令,确保将Flask-MQTT安装到Python3的环境中:pip3 install Flask-MQTT如果之前安装路径有误,可强制重新安装覆盖:
pip3 install Flask-MQTT --force-reinstall验证安装路径
运行命令确认库是否安装到了Python3的目录:pip3 show Flask-MQTT查看输出里的
Location字段,应该指向类似/home/pi/.local/lib/python3.7/site-packages的Python3专属路径。指定Python3运行脚本
执行脚本时明确调用Python3,避免系统默认使用Python2:python3 app.py虚拟环境下的处理
激活虚拟环境后,直接使用pip install Flask-MQTT即可(虚拟环境中的pip默认绑定当前环境的Python版本),安装完成后再运行脚本。
关于Python版本的说明
你不需要升级到Python3.10,Flask-MQTT 1.0.7版本兼容Python3.7.3——从依赖要求来看,仅对Python3.5以下版本需要额外安装typing,你的版本完全满足运行条件。
内容的提问来源于stack exchange,提问作者Bear-O
相关产品推荐
相关产品推荐

