2017-08-21 185 views
1

我使用pip将Resource模块安装到我的笔记本电脑上的默认conda环境:(C:\ Users \ my_username \ Anaconda2)。我认为它被称为根。我在conda环境中安装了pip,所以我90%确定资源已安装在环境中。确实运行conda list显示该软件包在环境中列出。下面是输出的一部分:为什么不能conda在前缀(在conda环境中)找到已安装pip模块

# packages in environment at C:\Users\conna\Anaconda2: 
# 
qtpy      1.2.1     py27_0 
requests     2.14.2     py27_0 
Resource     0.2.0      <pip> 
rope      0.9.4     py27_1 
ruamel_yaml    0.11.14     py27_1 
scandir     1.5      py27_0 
scikit-image    0.13.0    np112py27_0 

然而,当我运行

conda update Resource 

我收到以下错误:

PackageNotInstalledError: Package is not installed in prefix. 
prefix: C:\Users\conna\Anaconda2 
package name: Resource 

怎么可能是conda list显示模块存在但conda update看不到它们?我也注意到conda update不承认与<pip>任何包。发生什么事?

+0

康达和PIP不会相互干扰。 – swatchai

+0

Conda无法更新由pip安装的软件包。这就是发生的事情。除非有绝对必要,否则您应该避免在conda中使用pip。 – darthbith

+0

相关:https://stackoverflow.com/questions/44265533/does-conda-update-packages-from-pypi-installed-using-pip-install – MSeifert

回答

0

试试这个;

pip install Resource --upgrade 
1

conda只管理使用的是conda命令安装的软件包。如果您安装了一个包含pip(或使用python setup.py installdevelop)的包,它将显示为conda list(因为它会显示所有包,不管它们的安装方式如何),但conda不会管理该包。只是因为它不知道如何!

所以,如果你有pip还需要升级软件包安装/使用pip更新:

pip install [package_name] --upgrade