【发布时间】:2016-10-03 12:08:32
【问题描述】:
我最近开始在使用 pip 安装 python 包时遇到问题。我一直使用 pip 但从来没有真正理解它的实际工作原理,我对它的经验基本上仅限于“pip install pkg”。
最近尝试在我的机器上安装 openCV 时,我遵循了一些涉及更改路径等的指南。自从进行这些更改后,我一直无法使用 pip 正确安装软件包。
现在当我运行“pip3 install pkg”时,安装运行良好,没有任何错误。但是,当我尝试在 python 中导入模块时,python 找不到包。如果我在终端中运行“pip3 list”,我会得到一个与在 python 中运行 help('modules') 不同的模块列表。
我认为 pip 正在将软件包安装到与我的 python 版本在导入模块时引用的不同位置?
有没有办法可以更改 pip 的安装位置?改变路径是什么意思,我以后如何避免这种情况?
提前致谢。
编辑:我应该提到运行“python3 -m pip install pkg”可以正确安装软件包。
【问题讨论】:
-
你可以试试这个,它会针对每个项目隔离你的python包virtualenv.pypa.io/en/stable
-
你可能同时安装了python2和python3?您的
pip调用正在调用 python2 版本 -
我确实安装了 python2 和 python3,但是我在安装时调用的是 pip3 而不是 pip。
-
您遵循的“涉及改变路径的指南”是什么?
-
当您调用
pip时,它将从您的PATH环境变量中的目录加载 - 它可能选择了错误的目录。获取您需要的pip的完整路径名并始终使用它,不要让它碰运气。就我个人而言,我有一个名为runpip的小脚本可以执行此操作。