python - pip install 与 python3 -m pip install

标签 python pip anaconda

我正在 conda 环境中工作,尝试将包安装到其中。在我以前的计算机上,pip install <package name>在那个环境下工作。但在这台新 Mac 上,如果我这样做,然后尝试在该环境中导入包,它就不起作用。

这个:

pip install SpeechRecognition

不同

python3 -m pip install SpeechRecognition

后者在下面起作用,但前者不起作用:

>>>import speech_recognition
>>>

此外,这些文件似乎指向同一个位置:

(test) ~$ which python
/anaconda3/envs/test/bin/python
(test) ~$ which python3
/anaconda3/envs/test/bin/python3
(test) ~$ which pip
/anaconda3/envs/test/bin/pip

一切都在测试环境中运行。

所以这是怎么回事?我该如何解决它?我希望能够在隔离环境中可靠地测试包。

更新

只是为了表明 pip 和 pip3 在我的机器上都使用 3.7,而不是 2.7:

(base) ~$ conda activate test
(test) ~$ which pip3
/Library/Frameworks/Python.framework/Versions/3.7/bin/pip3
(test) ~$ which pip
/anaconda3/envs/test/bin/pip
(test) ~$ pip --version
pip 19.1.1 from /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pip (python 3.7)

或者,这就是问题所在吗? pip 使用与测试环境不同的 3.7?如果是这样,为什么?

最佳答案

在许多系统上,pip 使用 Python 2 解释器,而 pip3 使用 Python 3 解释器。仅安装 Python 3 时,pippip3 相同。了解使用哪个解释器的一种方法是读取文件 pip 的第一行。

python3 -m pip install 相当于 pip3 但至少明确表明您想要使用 python3

在你的例子中,看起来pip使用Python 2解释器,但使用了为Python 3安装的模块。这很奇怪。

我建议您使用python3 -m pip install,而不是依赖命令pip

关于python - pip install 与 python3 -m pip install,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56940665/

相关文章:

linux - python 激活

python - OpenCV:计算相机和物体之间的角度

python - 打开和使用 Safari

python - 如何将 numpy 安装到 Python 3.5?

python - 为什么我的包不能安装 "pipx"?

python-3.x - Ubuntu 21.04、Virtualenv 及其 Python 配置

python - TK Framework双重实现问题

python - Jupyter 笔记本中的自动完成功能不起作用

python - 如何在python中将像293.4662543这样的 float 转换为293.47?

python - 使用 python 将文件拆分为许多其他文件