我的电脑上安装了Anaconda,我想更新它。 在Navigator中,我可以看到有几个单独的软件包可以更新,但也有一个anaconda
软件包,有时有版本号,有时写着custom
。 我应该如何进行?
在大多数情况下,当你说你想更新Anaconda时,你想做的是执行命令。
conda update --all
(但这应该在**之前执行 "conda update -n root conda",这样你就安装了最新的 "conda "版本)
这将把当前环境中的所有软件包更新为最新版本--小编认为它可能会使用某些软件包的旧版本,以满足依赖关系的限制(通常这没有必要,当有必要时,软件包计划解算器将尽力减少影响)。
这需要在命令行中执行,最好的方法是在Anaconda导航器中,然后在"环境"标签上,然后点击`root'环境旁边的三角形,选择"打开终端"。
这个操作将只更新一个选定的环境(在这种情况下,根'环境)。 如果你有其他想要更新的环境,你可以重复上面的过程,但首先要点击环境。 当它被选中时,在右边有一个三角形的标记(见上图,第3步)。 或者从命令行提供环境名称(
-n envname)或路径(
-p /path/to/env),例如更新上面截图中的
dspyr`环境。
conda update -n dspyr --all
如果你只对更新单个软件包感兴趣,那么只需点击Navigator中的蓝色箭头或蓝色版本号,例如上面截图中的 "astroid "或 "astropy",这将标记这些软件包进行升级。 当你完成后,你需要点击"Apply" 按钮。
或者从命令行中。
conda update astroid astropy
如果你不关心软件包的版本,只想要"标准Anaconda发行版中所有软件包的最新集合,只要它们能一起使用",那么你应该看看这个gist。
在大多数情况下,更新软件包列表中的Anaconda软件包会产生一个令人惊讶的结果:你实际上可能会降级许多软件包(事实上,如果它显示版本为 "自定义",这很有可能)。 上面的gist提供了细节。
你的`root'环境可能不是一个试图管理一套精确的软件包的好地方:它将是一个动态的工作空间,有新安装的软件包和随机更新的软件包。 如果你需要一个精确的软件包集,那就创建一个conda环境来保存它们。 由于conda的软件包缓存和文件链接的方式,这样做通常是:i)快速,ii)消耗很少的额外磁盘空间。 例如
conda create -n myspecialenv -c bioconda -c conda-forge python=3.5 pandas beautifulsoup seaborn nltk
conda文档]4中有更多细节和例子。
这些都不能帮助更新通过pip
从PyPI安装的软件包,或者任何使用python setup.py install
安装的软件包。 conda list
会给你一些提示,告诉你在一个环境中拥有的基于pip的Python包,但它不会做任何特别的事情来更新它们。
这几乎是完全相同的故事,除了你可能无法更新 "root "环境,如果它是由其他人安装的(比如说到/opt/anaconda/latest
)。 如果你不能更新你正在使用的环境,你应该能够克隆,然后再更新。
conda create -n myenv --clone root
conda update -n myenv --all
如果你试图将你的Anaconda版本更新到一个新的版本,你会发现运行新的安装程序是不行的,因为它抱怨说安装目录不空。
所以你应该按照官方文档的详细说明使用conda来升级。
conda update conda
conda update anaconda
<hr/>。 在Windows中,如果你做了一个"为所有用户"的安装,可能需要用管理员权限从Anaconda提示符下运行。
![只需在开始菜单中右击Anaconda Prompt][1] 。
这可以防止错误的发生。
ERROR conda.core.link:_execute(502):在卸载软件包'defaults::conda-4.5.4-py36_0'时发生错误。 PermissionError(13, ' Access is denied')
打开"命令或conda提示符"并运行。
conda update conda
conda update anaconda
最好将这两条命令运行两次(一个接着一个),以确保所有的基本文件都得到更新。
这应该能让你回到最新的'版本上,其中包含了由Continuum的员工挑选出来的、能良好配合的软件包。
如果你想要每个软件包的最后一个版本运行(这可能导致不稳定的环境)。
conda update --all
希望这有帮助。
来源: