Eclipse Oxygen中Pydev(Python3)pip异常:无法识别已安装包
解决Pydev中Python3.6.4无法识别已安装pip包的问题
我之前也碰到过类似的多Python版本在Pydev里的包识别异常,结合你的情况——Python3.5.1能正常显示所有包、3.6.4仅在Pydev里看不到已装包但命令行正常,大概率是解释器缓存、路径配置或者Win7权限的小问题,试试下面这些针对性的解决步骤:
1. 重置Pydev的Python3.6.4解释器配置
Pydev会缓存解释器的包信息,有时候即使你手动安装了包,缓存也不会自动更新,重置一下就能解决:
- 打开Eclipse,依次点击
Window > Preferences > PyDev > Interpreters > Python Interpreters - 在左侧列表找到你的Python3.6.4解释器,选中后点击右侧的
Remove删除配置 - 点击
New,重新定位到Python3.6.4安装目录下的python.exe,跟着向导完成配置 - 重启Eclipse,再去查看包列表(不管是通过Preferences还是项目属性),应该就能看到那些缺失的包了
2. 手动添加Python3.6.4的site-packages路径到Pydev
有时候手动用pip安装的包,Pydev可能没自动检测到对应的site-packages目录:
- 先在DOS命令行执行
python3.6 -m pip show pip,找到输出里的Location字段,这就是pip安装所有包的路径 - 回到Pydev的解释器配置页面,选中Python3.6.4解释器,切换到
Forced Builtins标签页 - 点击
Add Folder,把刚才找到的site-packages路径添加进去 - 点击
Apply and Close,重启Eclipse后再检查包列表
3. 以管理员身份运行Eclipse解决Win7 UAC权限问题
Win7的用户账户控制(UAC)可能会限制Pydev读取Python3.6.4的site-packages目录:
- 右键点击Eclipse的快捷方式,选择
以管理员身份运行 - 打开后重新刷新Python3.6.4的解释器包列表,看看是否能显示缺失的包
- 如果有效,可以设置Eclipse默认以管理员身份运行:右键快捷方式 → 属性 → 兼容性 → 勾选
以管理员身份运行此程序
4. 确认pip与Python3.6.4的对应关系(双重验证)
虽然你说DOS命令行里pip正常,但还是确认下pip和Python3.6.4的绑定关系更稳妥:
- 在DOS命令行执行
python3.6 -m pip list,确认能看到pip、wheel、pyodbc这些包 - 再执行
where python3.6和where pip3.6,确保两个命令的输出路径都指向Python3.6.4的安装目录 - 如果发现pip3.6不在3.6的安装目录下,执行
python3.6 -m ensurepip --upgrade重新为3.6.4安装并升级pip
这些方法应该能解决你的问题,毕竟Python3.5.1能正常工作,说明Pydev本身的功能没问题,就是3.6.4的配置或权限出了点小状况。
内容的提问来源于stack exchange,提问作者user1459519
相关产品推荐
相关产品推荐

