升级Ubuntu至18.04后虚拟环境启动Spyder3报simplegeneric模块缺失
解决Ubuntu 18.04虚拟环境中Spyder3提示
simplegeneric缺失的问题 这种情况我之前也碰到过,核心原因是你启动的是Ubuntu系统自带的全局Spyder3,而不是虚拟环境里的Spyder实例——系统版Spyder会优先调用系统Python环境的包,完全看不到你在虚拟环境里安装的simplegeneric。
下面是具体的解决步骤:
1. 在虚拟环境内重新安装Spyder
系统自带的Spyder3和虚拟环境不兼容,我们需要在虚拟环境里单独装一份:
- 确保虚拟环境处于激活状态:
source dev/bin/activate - 先卸载可能存在的冲突版本(虚拟环境内卸载不会影响系统全局工具):
pip uninstall spyder spyder3 -y - 然后在虚拟环境内安装Spyder:
pip install spyder - 之后直接运行
spyder(注意不是spyder3,虚拟环境里的命令是spyder)启动即可。
2. 验证环境是否正确配置
可以通过以下命令确认你用的是虚拟环境里的工具:
- 查看Spyder的路径,应该指向虚拟环境目录:
正常输出应该是which spyder/media/shared/Development/python/dev/bin/spyder - 确认
simplegeneric安装在虚拟环境中:
输出路径应该包含python -c "import simplegeneric; print(simplegeneric.__file__)"dev/lib/python3.6/site-packages/
3. 极端情况:重新创建虚拟环境
如果上面的步骤都没用,可能是虚拟环境本身有损坏,试试重建:
# 退出虚拟环境 deactivate # 删除旧环境 rm -rf dev # 重新创建并激活 python3 -m venv dev source dev/bin/activate # 先装依赖再装Spyder pip install simplegeneric wheel spyder # 启动Spyder spyder
这样应该就能解决模块缺失的问题了。
内容的提问来源于stack exchange,提问作者MaxGyver
相关产品推荐
相关产品推荐

