为什么有些软件包可以在Pip中升级,而不是在Conda中?

时间:2016-12-02 18:07:01

标签: python pip conda

我在Windows 10下安装了Anaconda。一切正常。我也跑了

conda upgrade --all

在命令提示符下。

但是,我注意到当我在命令提示符下键入它时:

pip list -o

我得到(除其他外)

astroid (1.4.7) - Latest: 1.4.8 [wheel]

这意味着包astroid可以在pip下升级。但是,当我转到Anaconda Navigator并查看可升级软件包列表时,我看不到astroid。 (我无法找到命令行查看哪些软件包可以在Conda下升级)。

有人可以解释为什么astroid在Pip下可以升级而不是在Conda下?

2 个答案:

答案 0 :(得分:5)

package list maintained by AnacondaPyPI不同。似乎astroid尚未在Anaconda软件包列表中更新。

您可以等到Anaconda中的更新可用,或者您可以通过卸载conda版本并安装pip one来temporarily use the version available via pip

conda remove astroid
pip install astroid

当Anaconda更新时,将这两个命令反向切换回来:

pip uninstall astroid
conda install astroid

答案 1 :(得分:2)

看起来Anaconda尚未更新astroid - 他们的package list将其显示为仅适用于v1.4.7(在顶部标签中选择Python 3.5并按Ctrl + F astroid或者看on this page)。但是,astroid更新了Pip从中获取包的PyPI存储库,因此v1.4.8可通过Pip而不是通过Anaconda获得。

至于为什么包没有升级 - 我不太确定。自发布以来已经有足够的时间,并且没有解释为什么他们不会升级,所以我无法说出来。如果您需要最新版本,请通过pip安装。