【问题标题】:Which is the correct command to update all anaconda python packages?哪个是更新所有 anaconda python 包的正确命令?
【发布时间】:2017-08-22 07:12:54
【问题描述】:
我正在使用 python Anaconda。我很困惑哪个是将所有 Anaconda 软件包更新到最新版本的正确命令。好像有2个命令可以使用;
$ conda update --all
或
$ conda update anaconda
运行后者后,anaconda 升级到了ver4.4。随后,我运行前者,询问我是否要降级一些软件包。这让我感到困惑。使用哪个命令正确?
【问题讨论】:
标签:
python
python-3.x
anaconda
【解决方案1】:
anaconda 包是一个“元”包,这意味着它本身不包含任何包,它只是设置 Anaconda Inc.(以前称为 Continuum IO)包含的许多包的特定版本“蟒蛇分布”。因此,当您键入
conda update anaconda
您告诉 conda 更新到最新版本的 anaconda 包,并安装所有依赖项及其在 anaconda 包中指定的特定版本。这样做的好处是 Anaconda Inc.(前身为 Continuum IO)已经一起测试了这些软件包,并确保不会发生任何冲突。
当你输入时
conda update --all
conda 使用其内部算法来尝试解决依赖项的版本。我不确定细节,但这可能会导致一些包被升级,但其他包被降级,因为您安装的某些包需要降级版本的依赖项。尤其是anaconda 元包安装的包的数量,肯定会发生冲突,conda 正在尽最大努力解决所有这些问题。
至于使用哪个,我想说如果您从anaconda 开始,请继续使用anaconda 以避免版本冲突(即conda update anaconda)。但是,如果您有一个全新的环境,或者您使用的 Miniconda 没有安装 anaconda 元包,那么 conda update --all 可能是更好的选择。您的里程可能会有所不同。