只是想知道什么是更新Anaconda和Conda安装和虚拟环境的正确方法。这是我一步一步的困惑:
conda update anaconda
,它将更新/降级许多软件包。conda update conda
,它再次更新/降级了某些软件包。conda update --update-all
它开始降级/升级不同的软件包。最后,为了确保所有内容都已更新,我conda update anaconda
再次运行。我原本希望收到类似“一切都最新”的消息,但令我惊讶的是,它又显示了一大堆需要再次更新/降级的软件包?
我在这里做错了什么?在我看来,我似乎正在绕这些命令。有什么帮助吗?
在Anaconda的此有用文章中找到了答案
下面是一个经常被问到的问题,我认为发布一个答案来解释Anaconda保持最新状态的各种方式会很有帮助。该问题最初是在StackOverflow上提出的。
我的计算机上安装了Anaconda,我想对其进行更新。在Navigator中,我可以看到有几个可以更新的单独程序包,还有一个anaconda程序包,它有时具有版本号,有时说是custom。我该如何进行?
95%的人实际想要什么在大多数情况下,当您说要更新Anaconda时要执行的命令是:
conda update --all
这会将当前环境中的所有软件包更新为最新版本-较小的字样是它可能会使用某些软件包的较旧版本来满足依赖关系约束(通常无需这样做,并且在必要时可以使用该软件包计划求解器将尽力将影响降到最低)。
这需要从命令行执行,并且到达那里的最佳方法是从Anaconda Navigator,然后单击“环境”选项卡,然后单击根环境旁边的三角形,选择“打开终端”:
此操作将仅更新一个选定的环境(在本例中为根环境)。如果您要更新其他环境,则可以重复上述过程,但请先单击该环境。选中后,右侧会出现一个三角形标记(请参见上图,第3步)。或者,可以从命令行提供环境名称(-n envname)或路径(-p / path / to / env)。例如,要从上面的屏幕快照更新dspyr环境:
conda update -n dspyr --all
如果您只想更新单个软件包,则只需在导航器中单击蓝色箭头或蓝色版本号,例如,在上面的屏幕快照中单击astroid或astropy,这将标记这些软件包以进行升级。完成后,您需要单击“应用”按钮:
或从命令行:
conda update astroid astropy
如果您不关心软件包的版本,而只是想要“标准Anaconda发行版中所有软件包的最新集合,只要它们可以一起工作”,那么您应该了解一下这一要点。
在大多数情况下,更新软件包列表中的Anaconda软件包将产生令人惊讶的结果-您实际上可以降级许多软件包(实际上,如果将版本指示为自定义,则可能会降级)。上面的要点提供了详细信息。
您的根环境可能不是尝试管理一组确切的软件包的好地方-它将是一个动态的工作空间,其中安装了新软件包并随机更新了软件包。如果您需要一组确切的软件包,请创建一个conda环境来保存它们。由于使用了conda软件包缓存和使用文件链接的方式,因此这样做通常很快,并且仅占用很少的额外磁盘空间。例如:
conda create -n myspecialenv -c bioconda -c conda-forge python=3.5 pandas beautifulsoup seaborn nltk
conda文档包含更多详细信息和示例。
这些都无助于更新通过pip从PyPI安装的软件包,或使用python setup.py install安装的任何软件包。conda列表将为您提供有关环境中基于pip的Python包的一些提示,但对其进行更新不会做任何特别的事情。
这几乎是完全相同的故事,不同的是,如果其他人安装了根环境(例如,到/ opt / anaconda / latest),则可能无法更新根环境。如果您无法更新正在使用的环境,则应该能够克隆然后更新:
conda create -n myenv --clone root
conda update -n myenv --all
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句