更新Anaconda和Conda基础和环境的正确方法是什么?

Exan

只是想知道什么是更新Anaconda和Conda安装和虚拟环境的正确方法。这是我一步一步的困惑:

  1. 当我运行command时conda update anaconda,它将更新/降级许多软件包。
  2. 然后我运行conda update conda,它再次更新/降级了某些软件包。
  3. 接下来,我运行conda update --update-all它开始降级/升级不同的软件包。
  4. 最后,为了确保所有内容都已更新,我conda update anaconda再次运行我原本希望收到类似“一切都最新”的消息但令我惊讶的是,它又显示了一大堆需要再次更新/降级的软件包?

    我在这里做错了什么?在我看来,我似乎正在绕这些命令。有什么帮助吗?

Exan

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发行版中所有软件包的最新集合,只要它们可以一起工作”,那么您应该了解一下这一要点。

为什么更新Anaconda软件包几乎总是一个坏主意

在大多数情况下,更新软件包列表中的Anaconda软件包将产生令人惊讶的结果-您实际上可以降级许多软件包(实际上,如果将版本指示为自定义,则可能会降级)。上面的要点提供了详细信息。

利用conda环境

您的根环境可能不是尝试管理一组确切的软件包的好地方-它将是一个动态的工作空间,其中安装了新软件包并随机更新了软件包。如果您需要一组确切的软件包,请创建一个conda环境来保存它们。由于使用了conda软件包缓存和使用文件链接的方式,因此这样做通常很快,并且仅占用很少的额外磁盘空间。例如:

conda create -n myspecialenv -c bioconda -c conda-forge python=3.5 pandas beautifulsoup seaborn nltk

conda文档包含更多详细信息和示例。

pip,PyPI和setuptools?

这些都无助于更新通过pip从PyPI安装的软件包,或使用python setup.py install安装的任何软件包。conda列表将为您提供有关环境中基于pip的Python包的一些提示,但对其进行更新不会做任何特别的事情。

Anaconda或Anaconda Enterprise的商业用途

这几乎是完全相同的故事,不同的是,如果其他人安装了根环境(例如,到/ opt / anaconda / latest),则可能无法更新根环境。如果您无法更新正在使用的环境,则应该能够克隆然后更新:

conda create -n myenv --clone root
conda update -n myenv --all

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Anaconda / conda / python / Windows:如何启动和激活conda环境?

在生产和开发环境中设置不同 URL 前缀的正确方法是什么?

在 AWS CDK 中识别生产和开发环境的正确方法是什么?

Conda和Anaconda有什么区别?

在Spring Boot和JPA中更新n-m关系的正确方法是什么?

用xbuild和Jenkins更新android清单的正确方法是什么

在Firestore中更新文档的createdAt和UpdatedAt日期字段的正确方法是什么?

php 中 for 和 SQL 更新的正确语法是什么?

共享Juju环境的正确方法是什么?

使用骆驼和activemq“暂停”路线的正确方法是什么?

使用PARENT和FIND的正确方法是什么?

安装和运行django项目的正确方法是什么?

在Angular中使用`useFactory`和`deps:[]`的正确方法是什么?

安装Maven和Eclipse的正确方法是什么?

在Java中使用日期和日历的正确方法是什么?

使用 Promise.reject 和 javascript 的正确方法是什么

用Browserify加载polyfills和shims的正确方法是什么

ViewPager和片段—存储片段状态的正确方法是什么?

使用Maven和Eclipse的正确方法是什么?

在Julia中保存和检索字典的正确方法是什么?

使用jQuery fadeIn()和fadeOut()的正确方法是什么?

设置 Node.js 和 MySQL 的正确方法是什么?

从CUDA代码生成SASS和PTX的正确方法是什么

混合C ++和蓝图的正确方法是什么?

使用指针和 offsetof() 访问结构的正确方法是什么

在 appscript 中使用 OR 和 AND 的正确方法是什么?

JavaFX 和 Gradle:加载默认视图的正确方法是什么?

使用结构指针和C接口的“正确”方法是什么?

组织JQuery和其他插件的正确方法是什么?