我是 conda 的新手,看到一些奇怪的东西,但我实际上不知道这是否是一个问题。
我目前在根环境中。在某些时候,我试图在另一个环境中安装 pip,但不小心运行了pip install requests
. 这似乎已将其安装在我的根环境中:
$ conda list | grep requests
requests 2.12.4 py36_0
requests 2.13.0 <pip>
看起来 pip 版本是我运行 python 时得到的:
$ python
Python 3.6.0 |Continuum Analytics, Inc.| (default, Dec 23 2016, 12:22:00)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import requests; requests.__version__
'2.13.0'
我的猜测是,拥有相同软件包的两个版本会在以后引起头痛。然后我的假设是我最好保留非 pip 版本,所以我尝试了这个:
$ pip uninstall requests
[asks for confirmation, say yes]
$ conda list
[traceback, which I can post if helpful. Summary is:]
ModuleNotFoundError: No module named 'requests'
然后pip install requests
让我回到第 1 格(有两个版本的请求)。
最后,我想知道如何防止这种情况再次发生。根据文档,如果我想使用 pip 在 conda 环境中安装包,我应该:
- 激活要安装包的 conda 环境
- 跑
pip install whatever
- 它应该显示在
conda list
当前环境中。
但是,这对我不起作用 - 安装的包显示在当前环境下conda list --name root
而不是在当前环境中。
所以,几个问题:
requests
在我的 conda root中有两个副本是否有问题?- 如果这是一个问题,我该如何解决?
- 如何在 conda 环境中使用 pip?