Windows11下VS Code运行Paho MQTT测试代码遇模块导入失败
问题解决方法
针对你遇到的两个模块导入失败问题,以下是具体解决步骤:
1. 解决pytest模块缺失问题
直接在终端执行安装命令即可:
pip install pytest
如果你的系统存在多个Python版本,建议指定对应版本的pip来安装,比如Windows下:
py -3.11 -m pip install pytest
2. 解决paho模块找不到的问题
这个问题通常是Python环境不一致或代码路径配置错误导致的,提供两种解决方法:
方法一:统一VS Code使用的Python环境
- 打开VS Code,点击左下角显示的当前Python解释器版本;
- 在弹出的列表中,选择你安装
paho-mqtt的那个Python版本(对应路径为c:\users\g\appdata\local\programs\python\python311); - 重新运行测试代码即可。
方法二:调整代码的路径配置
你运行的是paho-mqtt仓库自带的测试代码,仓库本身包含paho源码,只需修改代码中添加路径的逻辑,让Python能找到本地源码:
将代码中添加sys.path的部分修改为:
cmd_subfolder = os.path.realpath( os.path.abspath( os.path.join( os.path.split( inspect.getfile(inspect.currentframe()))[0], '..'))) # 去掉原代码中的'test',仅回到上级目录 if cmd_subfolder not in sys.path: sys.path.insert(0, cmd_subfolder)
修改后Python会自动识别仓库根目录下的paho文件夹,无需依赖已安装的库。
额外排查技巧
如果问题仍存在,可以在代码开头添加以下代码,确认当前Python环境和路径配置:
import sys print("当前Python解释器路径:", sys.executable) print("当前搜索路径列表:", sys.path)
通过输出可以验证:
- 解释器路径是否与安装
paho-mqtt的Python路径一致; sys.path中是否包含paho模块所在的目录。
内容的提问来源于stack exchange,提问作者vico
相关产品推荐
相关产品推荐

