我在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?如果是这样,为什么?
答案 0 :(得分:0)
在许多系统上,pip
使用Python 2解释器,而pip3
使用Python 3解释器。仅安装Python 3时,pip
与pip3
相同。知道使用哪个解释器的一种方法是读取文件pip
的第一行。
python3 -m pip install
等效于pip3
,但至少明确表明您要使用python3
。
在您的情况下,似乎pip
使用Python 2解释器,但使用的是为Python 3安装的模块。
我建议您使用python3 -m pip install
而不是依靠命令pip
。