欢迎访问我的网站,希望内容对您有用,感兴趣的可以加入我们的社群。

Anaconda升级需要知道的那些事

Python基础 迷途小书童 4年前 (2021-01-26) 7807次浏览 0个评论

软硬件环境

  • ubuntu 18.04 64bit
  • anaconda with python 3.7

前言

最近为了体验 yolov5v4.0 发行版,需要将 python 升级到 3.8 版本,由于一直都是使用的 anaconda 环境,所以问题就变成了如何升级 anaconda 及其 python 了。

升级步骤

首先查看当前 condapython 版本号

conda_update_anaconda

conda_update_anaconda

要升级 anaconda,需要先升级 conda,执行命令

conda update conda

升级后,conda 的版本号

conda_update_anaconda

然后通过 conda 命令去安装指定的 anaconda 版本,命令如下

conda install anaconda=VersionNumber

其中 VersionNumberanaconda 的版本号,目前最新版本是 2020.11,通过指定 anaconda 的发行版本号,命令会去抓取目标版本的元数据包(matapackages),在这个元数据包下的各个组件是经过严格测试的,所以这种升级方式是最安全、也是最可靠的。

另外,还有一条非常重要的命令是 conda update --all,这条命令不建议大家使用,它会将所有的软件包升级到当前环境下各自的最新版,并不是在 anaconda 某个版本的集合中,也没有经过官方的测试,在后续的使用中很有可能会出现兼容性的问题,一定要慎用。

可以通过命令 conda search anaconda 来查看当前的 anaconda 发行版本号

(base) PS C:\Users\Administrator> conda search anaconda
Loading channels: done
# Name                       Version           Build  Channel
anaconda                      custom          py27_0  pkgs/main
anaconda                      custom          py27_0  pkgs/free
anaconda                      custom          py27_1  pkgs/main
anaconda                      custom  py27h689e5c3_0  pkgs/main
anaconda                      custom          py34_0  pkgs/free
anaconda                      custom          py35_0  pkgs/free
anaconda                      custom          py35_1  pkgs/main
anaconda                      custom  py35h64770cb_0  pkgs/main
anaconda                      custom          py36_0  pkgs/free
anaconda                      custom          py36_1  pkgs/main
anaconda                      custom  py36h363777c_0  pkgs/main
anaconda                      custom          py37_0  pkgs/main
anaconda                      custom          py37_1  pkgs/main
anaconda                      custom          py38_1  pkgs/main
anaconda                       1.6.0      np16py26_0  pkgs/free
anaconda                       1.6.0      np16py27_0  pkgs/free
anaconda                       1.6.0      np17py26_0  pkgs/free
anaconda                       1.6.0      np17py27_0  pkgs/free
anaconda                       1.6.0      np17py33_0  pkgs/free
anaconda                       1.6.1      np16py26_0  pkgs/free
anaconda                       1.6.1      np16py27_0  pkgs/free
anaconda                       1.6.1      np17py26_0  pkgs/free
anaconda                       1.6.1      np17py27_0  pkgs/free
anaconda                       1.6.1      np17py33_0  pkgs/free
anaconda                       1.6.2      np16py26_0  pkgs/free
anaconda                       1.6.2      np16py27_0  pkgs/free
anaconda                       1.6.2      np17py26_0  pkgs/free
anaconda                       1.6.2      np17py27_0  pkgs/free
anaconda                       1.6.2      np17py33_0  pkgs/free
anaconda                       1.7.0      np16py26_0  pkgs/free
anaconda                       1.7.0      np16py27_0  pkgs/free
anaconda                       1.7.0      np17py26_0  pkgs/free
anaconda                       1.7.0      np17py27_0  pkgs/free
anaconda                       1.7.0      np17py33_0  pkgs/free
anaconda                       1.8.0      np16py26_0  pkgs/free
anaconda                       1.8.0      np16py27_0  pkgs/free
anaconda                       1.8.0      np17py26_0  pkgs/free
anaconda                       1.8.0      np17py27_0  pkgs/free
anaconda                       1.8.0      np17py33_0  pkgs/free
anaconda                       1.9.0      np18py26_0  pkgs/free
anaconda                       1.9.0      np18py27_0  pkgs/free
anaconda                       1.9.0      np18py33_0  pkgs/free
anaconda                       1.9.1      np18py26_0  pkgs/free
anaconda                       1.9.1      np18py27_0  pkgs/free
anaconda                       1.9.1      np18py33_0  pkgs/free
anaconda                       1.9.2      np18py26_0  pkgs/free
anaconda                       1.9.2      np18py27_0  pkgs/free
anaconda                       1.9.2      np18py33_0  pkgs/free
anaconda                       2.0.0      np18py26_0  pkgs/free
anaconda                       2.0.0      np18py27_0  pkgs/free
anaconda                       2.0.0      np18py33_0  pkgs/free
anaconda                       2.0.0      np18py34_0  pkgs/free
anaconda                       2.0.1      np18py26_0  pkgs/free
anaconda                       2.0.1      np18py27_0  pkgs/free
anaconda                       2.0.1      np18py33_0  pkgs/free
anaconda                       2.0.1      np18py34_0  pkgs/free
anaconda                       2.1.0      np19py26_0  pkgs/free
anaconda                       2.1.0      np19py27_0  pkgs/free
anaconda                       2.1.0      np19py33_0  pkgs/free
anaconda                       2.1.0      np19py34_0  pkgs/free
anaconda                       2.2.0      np19py26_0  pkgs/free
anaconda                       2.2.0      np19py27_0  pkgs/free
anaconda                       2.2.0      np19py33_0  pkgs/free
anaconda                       2.2.0      np19py34_0  pkgs/free
anaconda                       2.3.0      np19py26_0  pkgs/free
anaconda                       2.3.0      np19py27_0  pkgs/free
anaconda                       2.3.0      np19py33_0  pkgs/free
anaconda                       2.3.0      np19py34_0  pkgs/free
anaconda                       2.4.0     np110py27_0  pkgs/free
anaconda                       2.4.0     np110py34_0  pkgs/free
anaconda                       2.4.0     np110py35_0  pkgs/free
anaconda                       2.4.1     np110py27_0  pkgs/free
anaconda                       2.4.1     np110py34_0  pkgs/free
anaconda                       2.4.1     np110py35_0  pkgs/free
anaconda                       2.5.0     np110py27_0  pkgs/free
anaconda                       2.5.0     np110py34_0  pkgs/free
anaconda                       2.5.0     np110py35_0  pkgs/free
anaconda                       4.0.0     np110py27_0  pkgs/free
anaconda                       4.0.0     np110py34_0  pkgs/free
anaconda                       4.0.0     np110py35_0  pkgs/free
anaconda                       4.1.0     np111py27_0  pkgs/free
anaconda                       4.1.0     np111py34_0  pkgs/free
anaconda                       4.1.0     np111py35_0  pkgs/free
anaconda                       4.1.1     np111py27_0  pkgs/free
anaconda                       4.1.1     np111py34_0  pkgs/free
anaconda                       4.1.1     np111py35_0  pkgs/free
anaconda                       4.2.0     np111py27_0  pkgs/free
anaconda                       4.2.0     np111py34_0  pkgs/free
anaconda                       4.2.0     np111py35_0  pkgs/free
anaconda                       4.3.0     np111py27_0  pkgs/free
anaconda                       4.3.0     np111py34_0  pkgs/free
anaconda                       4.3.0     np111py35_0  pkgs/free
anaconda                       4.3.0     np111py36_0  pkgs/free
anaconda                       4.3.1     np111py27_0  pkgs/free
anaconda                       4.3.1     np111py34_0  pkgs/free
anaconda                       4.3.1     np111py35_0  pkgs/free
anaconda                       4.3.1     np111py36_0  pkgs/free
anaconda                       4.4.0     np112py27_0  pkgs/free
anaconda                       4.4.0     np112py35_0  pkgs/free
anaconda                       4.4.0     np112py36_0  pkgs/free
anaconda                       5.0.0  py27hfd113d2_0  pkgs/main
anaconda                       5.0.0  py35h91a80f2_0  pkgs/main
anaconda                       5.0.0  py36hea9b2fc_0  pkgs/main
anaconda                       5.0.1  py27hdb50712_1  pkgs/main
anaconda                       5.0.1  py35hda27cab_1  pkgs/main
anaconda                       5.0.1  py36h8316230_2  pkgs/main
anaconda                       5.0.1  py36hbd804ce_1  pkgs/main
anaconda                       5.1.0          py27_2  pkgs/main
anaconda                       5.1.0          py35_2  pkgs/main
anaconda                       5.1.0          py36_2  pkgs/main
anaconda                       5.2.0          py27_3  pkgs/main
anaconda                       5.2.0          py35_3  pkgs/main
anaconda                       5.2.0          py36_3  pkgs/main
anaconda                       5.3.0          py27_0  pkgs/main
anaconda                       5.3.0          py36_0  pkgs/main
anaconda                       5.3.0          py37_0  pkgs/main
anaconda                       5.3.1          py27_0  pkgs/main
anaconda                       5.3.1          py37_0  pkgs/main
anaconda                     2018.12          py27_0  pkgs/main
anaconda                     2018.12          py36_0  pkgs/main
anaconda                     2018.12          py37_0  pkgs/main
anaconda                     2019.03          py27_0  pkgs/main
anaconda                     2019.03          py36_0  pkgs/main
anaconda                     2019.03          py37_0  pkgs/main
anaconda                     2019.07          py27_0  pkgs/main
anaconda                     2019.07          py36_0  pkgs/main
anaconda                     2019.07          py37_0  pkgs/main
anaconda                     2019.10          py27_0  pkgs/main
anaconda                     2019.10          py36_0  pkgs/main
anaconda                     2019.10          py37_0  pkgs/main
anaconda                     2020.02          py36_0  pkgs/main
anaconda                     2020.02          py37_0  pkgs/main
anaconda                     2020.02          py38_0  pkgs/main
anaconda                     2020.07          py36_0  pkgs/main
anaconda                     2020.07          py37_0  pkgs/main
anaconda                     2020.07          py38_0  pkgs/main
anaconda                     2020.11          py37_0  pkgs/main
anaconda                     2020.11          py38_0  pkgs/main

接下来就可以进行根据自己的需要进行升级了,这里选择 2020.11

conda install anaconda=2020.11

conda_update_anaconda

等待升级完成后,查看 python 版本

conda_update_anaconda

发现 python 并没有升到 3.8,但是进入到 Anaconda Navigator 查看,anaconda 的版本确实已经升级到了 2020.11

conda_update_anaconda

那这到底是怎么回事呢?用上 python 3.8就这么难吗?

别急,使用 conda 创建个虚拟环境看看

conda create -n py38 python=3.8

conda_update_anaconda

然后激活虚拟环境,查看 python 版本号

conda_update_anaconda

目的达成。通过测试还发现,在创建虚拟环境的时候,python 的版本可以从 3.3 一直到最新的 3.9,之前的版本已经不支持了

conda_update_anaconda

从这里可以看出,basepython 默认还是3.7,如果想改变 base 对应的版本号,可以通过 conda 查询目标版本再安装

(base) PS C:\Users\Administrator> conda search python
Loading channels: done
# Name                       Version           Build  Channel
python                         2.6.8               5  pkgs/free
python                         2.6.8               6  pkgs/free
python                         2.6.9               0  pkgs/free
python                         2.6.9               1  pkgs/free
python                         2.7.3               2  pkgs/free
python                         2.7.3               3  pkgs/free
python                         2.7.3               4  pkgs/free
python                         2.7.3               5  pkgs/free
python                         2.7.3               6  pkgs/free
python                         2.7.3               7  pkgs/free
python                         2.7.4               0  pkgs/free
python                         2.7.5               0  pkgs/free
python                         2.7.5               1  pkgs/free
python                         2.7.5               2  pkgs/free
python                         2.7.6               0  pkgs/free
python                         2.7.6               2  pkgs/free
python                         2.7.7               0  pkgs/free
python                         2.7.7               1  pkgs/free
python                         2.7.7               2  pkgs/free
python                         2.7.8               0  pkgs/free
python                         2.7.9               0  pkgs/free
python                         2.7.9               1  pkgs/free
python                        2.7.10               0  pkgs/free
python                        2.7.10               1  pkgs/free
python                        2.7.10               3  pkgs/free
python                        2.7.10               4  pkgs/free
python                        2.7.10               5  pkgs/free
python                        2.7.11               0  pkgs/free
python                        2.7.11               1  pkgs/free
python                        2.7.11               2  pkgs/free
python                        2.7.11               4  pkgs/free
python                        2.7.11               5  pkgs/free
python                        2.7.12               0  pkgs/free
python                        2.7.13               0  pkgs/free
python                        2.7.13               1  pkgs/free
python                        2.7.13     h1b6d89f_16  pkgs/main
python                        2.7.13     h9912b81_15  pkgs/main
python                        2.7.13     hb034564_12  pkgs/main
python                        2.7.14     h2765ee6_18  pkgs/main
python                        2.7.14     h3e68818_15  pkgs/main
python                        2.7.14     h4084c39_22  pkgs/main
python                        2.7.14     h4a10d90_30  pkgs/main
python                        2.7.14     h4a10d90_31  pkgs/main
python                        2.7.14     h59f5a59_20  pkgs/main
python                        2.7.14     h819644d_16  pkgs/main
python                        2.7.14     h8c3f1cb_23  pkgs/main
python                        2.7.15      h2880e7c_2  pkgs/main
python                        2.7.15      h2880e7c_3  pkgs/main
python                        2.7.15      h2880e7c_4  pkgs/main
python                        2.7.15     hcb6e200_15  pkgs/main
python                        2.7.15      hcb6e200_5  pkgs/main
python                        2.7.15      hcb6e200_7  pkgs/main
python                        2.7.15      he216670_0  pkgs/main
python                        2.7.16      hcb6e200_0  pkgs/main
python                        2.7.17      h930f6bb_0  pkgs/main
python                        2.7.18      hcb6e200_0  pkgs/main
python                        2.7.18      hfb89ab9_0  pkgs/main
python                         3.3.0               4  pkgs/free
python                         3.3.1               0  pkgs/free
python                         3.3.2               0  pkgs/free
python                         3.3.3               0  pkgs/free
python                         3.3.4               0  pkgs/free
python                         3.3.5               0  pkgs/free
python                         3.3.5               1  pkgs/free
python                         3.3.5               2  pkgs/free
python                         3.4.0               0  pkgs/free
python                         3.4.1               0  pkgs/free
python                         3.4.1               1  pkgs/free
python                         3.4.1               2  pkgs/free
python                         3.4.2               0  pkgs/free
python                         3.4.2               1  pkgs/free
python                         3.4.3               0  pkgs/free
python                         3.4.3               3  pkgs/free
python                         3.4.3               4  pkgs/free
python                         3.4.3               5  pkgs/free
python                         3.4.4               0  pkgs/free
python                         3.4.4               1  pkgs/free
python                         3.4.4               2  pkgs/free
python                         3.4.4               4  pkgs/free
python                         3.4.4               5  pkgs/free
python                         3.4.5               0  pkgs/free
python                         3.5.0               0  pkgs/free
python                         3.5.0               1  pkgs/free
python                         3.5.0               2  pkgs/free
python                         3.5.0               3  pkgs/free
python                         3.5.0               4  pkgs/free
python                         3.5.1               0  pkgs/free
python                         3.5.1               1  pkgs/free
python                         3.5.1               2  pkgs/free
python                         3.5.1               4  pkgs/free
python                         3.5.1               5  pkgs/free
python                         3.5.2               0  pkgs/free
python                         3.5.3               0  pkgs/free
python                         3.5.3               2  pkgs/free
python                         3.5.3               3  pkgs/free
python                         3.5.4               0  pkgs/free
python                         3.5.4     h1357f44_23  pkgs/main
python                         3.5.4     hc495aa9_21  pkgs/main
python                         3.5.4     hd3c4935_11  pkgs/main
python                         3.5.4     hdec4e59_20  pkgs/main
python                         3.5.4     hedc2606_15  pkgs/main
python                         3.5.5      h0c2934d_0  pkgs/main
python                         3.5.5      h0c2934d_1  pkgs/main
python                         3.5.5      h0c2934d_2  pkgs/main
python                         3.5.6      he025d50_0  pkgs/main
python                         3.6.0               0  pkgs/free
python                         3.6.1               0  pkgs/free
python                         3.6.1               2  pkgs/free
python                         3.6.2               0  pkgs/free
python                         3.6.2     h09676a0_15  pkgs/main
python                         3.6.2     h6679aeb_11  pkgs/main
python                         3.6.3      h210ce5f_2  pkgs/main
python                         3.6.3      h3389d20_0  pkgs/main
python                         3.6.3      h3b118a2_4  pkgs/main
python                         3.6.3      h9e2ca53_1  pkgs/main
python                         3.6.4      h0c2934d_2  pkgs/main
python                         3.6.4      h0c2934d_3  pkgs/main
python                         3.6.4      h6538335_0  pkgs/main
python                         3.6.4      h6538335_1  pkgs/main
python                         3.6.5      h0c2934d_0  pkgs/main
python                         3.6.6      hea74fb7_0  pkgs/main
python                         3.6.7      h33f27b4_0  pkgs/main
python                         3.6.7      h33f27b4_1  pkgs/main
python                         3.6.7      h9f7ef89_2  pkgs/main
python                         3.6.8      h9f7ef89_0  pkgs/main
python                         3.6.8      h9f7ef89_1  pkgs/main
python                         3.6.8      h9f7ef89_7  pkgs/main
python                         3.6.9      h5500b2f_0  pkgs/main
python                        3.6.10      h9f7ef89_0  pkgs/main
python                        3.6.10      h9f7ef89_1  pkgs/main
python                        3.6.10      h9f7ef89_2  pkgs/main
python                        3.6.12      h5500b2f_2  pkgs/main
python                         3.7.0      hea74fb7_0  pkgs/main
python                         3.7.1      h33f27b4_3  pkgs/main
python                         3.7.1      h33f27b4_4  pkgs/main
python                         3.7.1      h8c8aaf0_6  pkgs/main
python                         3.7.1      he44a216_5  pkgs/main
python                         3.7.2      h8c8aaf0_0  pkgs/main
python                         3.7.2     h8c8aaf0_10  pkgs/main
python                         3.7.2      h8c8aaf0_2  pkgs/main
python                         3.7.3      h8c8aaf0_0  pkgs/main
python                         3.7.3      h8c8aaf0_1  pkgs/main
python                         3.7.4      h5263a28_0  pkgs/main
python                         3.7.5      h8c8aaf0_0  pkgs/main
python                         3.7.6      h60c2a47_2  pkgs/main
python                         3.7.7 h60c2a47_0_cpython  pkgs/main
python                         3.7.7      h60c2a47_2  pkgs/main
python                         3.7.7      h81c818b_4  pkgs/main
python                         3.7.9      h60c2a47_0  pkgs/main
python                         3.8.0      hff0d562_0  pkgs/main
python                         3.8.0      hff0d562_1  pkgs/main
python                         3.8.0      hff0d562_2  pkgs/main
python                         3.8.1      h5fd99cc_1  pkgs/main
python                         3.8.1 h5fd99cc_8_cpython  pkgs/main
python                         3.8.1 he1778fa_7_cpython  pkgs/main
python                         3.8.2      h5fd99cc_0  pkgs/main
python                         3.8.2     h5fd99cc_11  pkgs/main
python                         3.8.2     he1778fa_13  pkgs/main
python                         3.8.3      he1778fa_0  pkgs/main
python                         3.8.3      he1778fa_2  pkgs/main
python                         3.8.5      h5fd99cc_1  pkgs/main
python                         3.8.5      he1778fa_0  pkgs/main
python                         3.9.0      h6244533_2  pkgs/main
python                         3.9.0      h8aef87e_1  pkgs/main
python                         3.9.1      h6244533_2  pkgs/main

升级 python 到3.8.0版本

conda install python=3.8.0

conda_update_anaconda

命令执行完后,再次检查下 python 的版本

conda_update_anaconda

搞定!

参考资料

喜欢 (0)

您必须 登录 才能发表评论!