当前位置 : 主页 > 编程语言 > python >

Anaconda 的基本使用

来源:互联网 收集:自由互联 发布时间:2022-06-15
Anaconda常用的Python版本管理工具和Python包管理软件,conda是Anaconda中的具体管理工具,下载地址为: ​​https://www.anaconda.com/distribution/​​ 该软件较大,下载时间较长。 由于Anaconda原始下

Anaconda常用的Python版本管理工具和Python包管理软件,conda是Anaconda中的具体管理工具,下载地址为:

​​https://www.anaconda.com/distribution/​​

该软件较大,下载时间较长。

由于Anaconda原始下载包的地址在国外并且网速不快,所以一般我们选择切换为国内的镜像源:

一般建议选择中科大的镜像,而不是选择清华的,可能清华镜像选择的人过多也或许是它本就网速一般所以下载起来速度有可能比中科大的那个慢上几倍。

==================================================================

镜像源的安装:


中科大镜像源的添加:

命令:

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

然后去   .condarc 删除原有的清华镜像。

vim ~/.condarc

Anaconda 的基本使用_配置文件

将上图第三行删除保存即可。

虽然不建议用清华的镜像源,但是还是给出它的添加方式,如下:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

强烈不建议使用清华的镜像源,真的是太慢了!!!

最后,如果只添加中科大的镜像源, ~/.condarc  内容如下:

Anaconda 的基本使用_Python_02

Conda 附加库:

这里只给出  中科大  镜像的安装方法:


Conda Forge

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/

msys2

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/

bioconda

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/

menpo

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/

中科大镜像的完整添加命令:

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/

conda config --set show_channel_urls yes

===================================================================

查看  aconda  版本:

conda --version #查看conda的版

Anaconda 的基本使用_配置文件_03

更新  conda  中的各种包(Python库)

conda upgrade --all

Anaconda 的基本使用_tensorflow_04

升级自身,即升级 conda, conda 是Anaconda 的管理工具

conda update conda

Anaconda 的基本使用_python_05


如何更新升级   软件Anaconda ?

# If you want to update to a newer version of Anaconda, type:

#

# $ conda update --prefix /home/devil/anaconda3 anaconda


conda  update   --prefix  ********  anaconda

其中, *********** 是软件  Anaconda安装的路径,     --prefix ********   前缀指定软件的安装路径。


Anaconda 的基本使用_python_06


或使用命令:

conda update anaconda

Anaconda 的基本使用_tensorflow_07


conda list

打印在当前环境下所安装的包(Python 库)

Anaconda 的基本使用_Python_08

上面的命令可以发现,除了更新自身,即升级conda软件(  conda update conda  ),查看自身版本(  conda  --version  )以外,剩下的命令都是只对当前环境有效的,即(base)环境,也就是说 conda list 是打印出当前环境,即 base 环境下的已安装包, ( conda upgrade --all ) 也是升级 (base) 环境下的各个包。

注:默认条件下默认的环境就是conda安装后的默认自带环境,即 (base) 环境。

=======================================================================

安装新的环境:

Anaconda软件默认的环境为  base ,   如果我们需要不同版本的Python和软件版本,那么我们需要安装新的环境。

conda create -n py36 python=3.6 tqdm

创立新的环境,命名为py36,  为环境设定Python版本为Python3.6,并为环境安装包 tqdm 。

激活环境:

# To activate this environment, use

#

#     $ conda activate py36

conda activate py36


退出环境:

# To deactivate an active environment, use

#

#     $ conda deactivate

conda deactivate


Anaconda 的基本使用_tensorflow_09

卸载环境中的安装包:

conda remove -n py36 tqdm

卸载环境  py36  中的安装包  tqdm  。

Anaconda 的基本使用_tensorflow_10

为环境安装软件包:

conda install -n py36 tqdm

为环境py36 安装软件包 tqdm   。

Anaconda 的基本使用_python_11

删除环境中的所有软件包:

(  等同于     删除环境  )

conda remove -n py36 --all

删除环境 py36 中的所有软件包 。

Anaconda 的基本使用_Python_12

需要注意的是,如果软件中并没有安装任何第三方软件包,那么该方法无法删除环境。

如下所示:

Anaconda 的基本使用_tensorflow_13

这是创建的新环境 dev 并没有含任何第三方软件包。

发现此时使用  conda remove -n dev --all   方法无法删除该环境,如下图所示:

Anaconda 的基本使用_tensorflow_14

此时采用删除环境命令:

conda env remove -n dev

conda env remove -n/--name   *****环境名

删除 名为dev的环境。

Anaconda 的基本使用_python_15

查看环境命令:

conda info --env

conda info -e

conda env list


如下图:

Anaconda 的基本使用_Linux_16


Anaconda 的基本使用_Python_17


Anaconda 的基本使用_配置文件_18

重命名环境  或者 复制环境

conda create -n py36.bak --clone py36

创建一个新的环境  py36.bak   从原先的环境 py36 中复制来的

conda 中没有直接重命名环境的的命令, 我们可以复制(克隆)环境为一个新的名字,然后删除掉原先的那个名字的环境。

Anaconda 的基本使用_python_19

========================================================================


分享环境

如果你用conda写了一个程序或者部分代码,现在需要其它人在另一个电脑上运行或接着开发,那么我们可以把自己的开发环境的配置保存到一个文件,然后在另一个电脑上使用conda直接根据该配置环境生成所需要的编程环境。

第一步:  进入到环境中

conda activate py35


第二步: 保存环境的配置文件

conda env export > env_py35.yml

Anaconda 的基本使用_Linux_20

可以看到 保存的环境配置文件,  env_py35.yml  中的具体内容:

Anaconda 的基本使用_tensorflow_21

第三步:   在新的电脑中按照环境配置文件生成新的环境

conda env create -f env_py35.yml


conda env create -f  *********  按照环境配置文件生成新的环境。

**********  指的是环境配置文件

Anaconda 的基本使用_Linux_22


Anaconda 的基本使用_Python_23


Anaconda 的基本使用_配置文件_24


可以发现在新的电脑总我们根据保存的环境配置文件生成了新的环境。

=========================================================================

查看环境中安装的软件包

conda list

Anaconda 的基本使用_python_25

conda list 是查看当前环境中的已安装软件包。

conda list -n base

查看  命名为  base  的环境中的已安装软件包。

需注意的是不同环境中安装的软件包是不同的。

================================================================

创建新环境时如果没有指定Python版本,那么 Python版本为base环境中的Python版本。创建新环境时候如果既没有指定Python版本也没有指定第三方软件库,那么新环境将使用base环境中的Python版本和软件库,但是它的环境配置文件中配置为空。如下图:

Anaconda 的基本使用_python_26


Anaconda 的基本使用_配置文件_27


Anaconda 的基本使用_Linux_28

根据上图可以发现,如果新创建环境时不指定Python版本和第三方软件库,那么将使用 base 环境中的Python版本,和base 环境中的第三方库,而将新创建的环境配置文件输出后发现是没有任何配置的,由此可以发现为了不必要的后续开发过程中不断的纠错那么我们在穿件新环境时就应该避免不指定Python版本和第三方软件库的情况。

如果创建新环境时不指定Python版本,但是指定Python第三方软件库,那么新环境将按照base环境中的Python版本创建新的Python环境,并生成新的环境。

Anaconda 的基本使用_配置文件_29

Anaconda 的基本使用_Linux_30

Anaconda 的基本使用_tensorflow_31

 ===============================================================

查询  软件源中的  库版本:

conda search tensorflow

Anaconda 的基本使用_Python_32

查询  指定版本:

conda search tensorflow==1.12

Anaconda 的基本使用_配置文件_33

conda search tensorflow-gpu==1.12

Anaconda 的基本使用_tensorflow_34

查询anaconda源中Python包,anaconda会返回供安装的版本号以及安装方法:

anaconda show anaconda/tensorflow-gpuanaconda show anaconda/tensorflow

anaconda show anaconda/***********

********** 为Python包名。

Anaconda 的基本使用_python_35


Anaconda 的基本使用_Python_36

===============================================================

使用conda 安装tensorflow时需要注意:


  • tensorflow 1.4及以下的不支持cuda9.0,且tensorflow1.0版本以上是不支持cuda8.0以下的。


  • tensorflow-gpu1.5以后不支持使用CUDA8.0。cuda8.0对应的cuDNN必须是6.0版的。


也就是说如果你的 CUDA是8.0版本的,那么 cuDNN 就必须是6.0版本的,同时你如果安装tensorflow的话最高版本可以安装到 1.4 , 即tensorflow_1.4 。

但是  conda 可以自动安装  对应的cuda和cuDNN 版本,如下:

Anaconda 的基本使用_Linux_37

Anaconda 的基本使用_python_38

注明: 本机物理安装 cuda8.0和cuDNN6.0  。


如下图:

Anaconda 的基本使用_tensorflow_39

Anaconda 的基本使用_配置文件_40

可以发现,即使物理机上安装cuda8.0和cudnn6.0无法安装tensorflow-gpu=1.5, 但是conda自动安装cuda9.0和cudnn7.3, 使其可以安装上tensorflow-gpu=1.5, 十分神奇,从这可以发现conda是将cuda和cudnn也构建到了自己的软件包中了。


当然,该方法虽然很好,但是它却不能把显卡驱动也打包到一起,因为显卡驱动是和你电脑物理显卡版本走的,也就是说你的显卡是1050ti那么你装的显卡驱动最高可能也就支持cuda9.1和cudnn7.3.1 , 但是tensorflow-gpu=1.12(最新版本,conda提供的编译好的包)却要求cuda9.2和cudnn7.3.1,这个情况下你就怎么也不能搞定了,除非你自己编译tensorflow-gpu=1.5(从源码上编译)或许可行,但是这里就不研究了。

如下:

Anaconda 的基本使用_Linux_41

Anaconda 的基本使用_Python_42

Anaconda 的基本使用_python_43

Anaconda 的基本使用_python_44

发现最终问题出现在  显卡驱动版本不够, 而1050ti的显卡驱动又不支持更高的cuda版本,所以使用conda提供的编译好的tensorflow-gpu是搞不定了,或许从tensorflow-gpu源码编译可以搞定,这里就不研究了。


上一篇:PyScript 强势来袭,HTML 也可以跑 Python 了
下一篇:没有了
网友评论