Azure ServiceBus Python SDK导入报错:ModuleNotFoundError问题求助
问题解答
这个情况不属于版本兼容性问题,azure-servicebus 7.8.0官方明确支持Python 3.7及以上版本,你的Python 3.8.10在兼容范围内。出现ModuleNotFoundError的原因大概率是Python环境不匹配或安装异常,以下是具体排查和解决步骤:
排查与解决步骤
确认Python环境与pip环境一致
- 运行以下命令,检查输出路径是否包含你的虚拟环境目录(
/home/neo/neo-betalab/uni/event-receiver/venv):which python which pip - 如果路径不一致,说明你用的pip和运行代码的Python不是同一个环境,改用当前Python的pip重新安装:
python -m pip install azure-servicebus==7.8.0
- 运行以下命令,检查输出路径是否包含你的虚拟环境目录(
确认虚拟环境已激活
- 检查终端提示符是否带有
(venv)前缀,若没有,执行激活命令:source /home/neo/neo-betalab/uni/event-receiver/venv/bin/activate
- 检查终端提示符是否带有
验证包的实际安装结构
- 进入虚拟环境的site-packages目录下的azure文件夹:
cd /home/neo/neo-betalab/uni/event-receiver/venv/lib/python3.8/site-packages/azure - 查看是否存在
servicebus文件夹,若不存在,说明安装过程出错,执行卸载后重新安装(加--no-cache-dir避免缓存干扰):pip uninstall -y azure-servicebus pip install azure-servicebus==7.8.0 --no-cache-dir
- 进入虚拟环境的site-packages目录下的azure文件夹:
排查命名冲突
- 检查你的项目根目录下是否存在名为
azure.py的文件,若存在会覆盖官方包的导入,需重命名该文件。
- 检查你的项目根目录下是否存在名为
内容的提问来源于stack exchange,提问作者Charlie Clarke
相关产品推荐
相关产品推荐

