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

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

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

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

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

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

镜像源的安装:

中科大镜像源的添加:

参照网址:

https://blog.csdn.net/lijiecong/article/details/78339078

https://blog.csdn.net/qq_35608277/article/details/78714401

命令:

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

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

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

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  内容如下:

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的版

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

conda upgrade --all

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

conda update conda

如何更新升级   软件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 ********   前缀指定软件的安装路径。

或使用命令:

conda update anaconda 

conda list

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

上面的命令可以发现,除了更新自身,即升级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

卸载环境中的安装包:

conda remove -n py36 tqdm

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

为环境安装软件包:

conda install -n py36 tqdm

为环境py36 安装软件包 tqdm   。

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

(  等同于     删除环境  )

conda remove -n py36 --all

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

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

如下所示:

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

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

此时采用删除环境命令

conda env remove -n dev

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

删除 名为dev的环境。

查看环境命令:

conda info --env

conda info -e

conda env list

如下图:

重命名环境  或者 复制环境

conda create -n py36.bak --clone py36

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

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

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

分享环境

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

第一步:  进入到环境中

conda activate py35

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

conda env export > env_py35.yml

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

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

conda env create -f env_py35.yml

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

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

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

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

查看环境中安装的软件包

conda list

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

conda list -n base

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

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

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

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

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

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

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

查询  软件源中的  库版本:

conda search tensorflow

查询  指定版本:

conda search tensorflow==1.12

conda search tensorflow-gpu==1.12

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

anaconda show anaconda/tensorflow-gpu
anaconda show anaconda/tensorflow

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

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

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

使用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 版本,如下:

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

如下图:

可以发现,即使物理机上安装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(从源码上编译)或许可行,但是这里就不研究了。

如下:

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

Anaconda 的基本使用的更多相关文章

  1. 【Machine Learning】Python开发工具:Anaconda+Sublime

    Python开发工具:Anaconda+Sublime 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现 ...

  2. anaconda

    python 集成环境 anaconda的使用 https://www.zhihu.com/question/35757251

  3. 安装Anaconda

    安装Anaconda来安装一切 spyder是python科学计算IDE,类似matlab.这是一个基于Qt的软件,如果使用pip install安装,会出现各种bug.pip install spy ...

  4. Anaconda 安装 ml_metrics package

    ml_metrics is the Python implementation of Metrics implementations a library of various supervised m ...

  5. python和数据科学(Anaconda)

    Python拥有着极其丰富且稳定的数据科学工具环境.遗憾的是,对不了解的人来说这个环境犹如丛林一般(cue snake joke).在这篇文章中,我会一步一步指导你怎么进入这个PyData丛林. 你可 ...

  6. Anaconda 用于科学计算的 Python 发行版

    用于科学计算的 Python 发行版: 1.Anaconda  https://www.continuum.io/    公司continuum.  有商业版本. Anaconda is the le ...

  7. window下安装anaconda ipython和spyder都打不开

    1. 环境 win7 64位,软件是Anaconda2-4.1.1-Windows-x86_64.exe 2. 出现的问题 ipython打不开,一闪而过 spyder点击没有反应 anaconda ...

  8. pycharm的使用破解和Anaconda的使用

    1.pycharm的破解: 版本: pycharm 2016.2.3 链接: 下载专业版本   下面是这个版本的注册码: 43B4A73YYJ-eyJsaWNlbnNlSWQiOiI0M0I0QTcz ...

  9. Python anaconda links to GOMP_4.0 and throws error

    ImportError: /usr/progtools/anaconda2/bin/../lib/libgomp.so.1: version `GOMP_4.0' not found (require ...

  10. Anaconda died after receiving signal 7

    安装RHEL6-64时出现如下提示 Anaconda died after receiving signal 7 1 Anaconda是啥 是RedHat.CentOS.Fedora等Linux的安装 ...

随机推荐

  1. 关于 EF 对象的创建问题

    在开发过程中,项目往往被划分为多层,而一个请求过来往往是从表示层开始一层一层向下调用,那么如果我们在不同的层中都使用到了 EF 上下文对象,而 有好几层都这么创建一个 EF 对象然后对其进行操作,那么 ...

  2. 关于ORA-06508 , ORA-04068异常的详细说明

    参考:程序包调用报ORA-06508: PL/SQL: 无法找到正在调用的程序单元 出现这种情况的原因是因为,对于全局变量,每一个session会生成一个本地copy,如果程序重新编译的话,就会因程序 ...

  3. Hadoop格式化 From hu-hadoop1/192.168.11.11 to hu-hadoop2:8485 failed on connection exception: java.net.

    192.168.11.12:8485: Call From hu-hadoop1/192.168.11.11 to hu-hadoop2:8485 failed on connection excep ...

  4. xpath 获取表单的值

    <input type="hidden" id="hospital_id" value="6666sui"> $selector ...

  5. 漫谈moosefs中cgi各项的意义

    原创:http://www.cnblogs.com/bugutian/p/6869278.html 转载请注明出处 一.先上一张图 二.解释 1. Metadata Servers (masters) ...

  6. Java中static的用法,初始化块

    使用 Arrays 类操作 Java 中的数组语法: Arrays.sort(数组名); 可以使用 sort( ) 方法实现对数组的排序,只要将数组名放在 sort( ) 方法的括号中,就可以完成对该 ...

  7. npm run build 打包后,如何运行在本地查看效果(Apache服务)

    目前,使用vue-cli脚手架写了一个前端项目,之前一直是使用npm run dev 在8080端口上进行本地调试.项目已经进行一半了,今天有时间突然想使用npm run build进行上线打包,试试 ...

  8. python requests 的cookie 操作

    结论: 1.requests模块的请求和响应分别有cookie对象. 可以通过此对象设置和获取cookie. 2.通过在requests.get,requests.post等方法请求中传入cookie ...

  9. hash与平衡二叉树的区别

    哈希表的定义:哈希表是一种根据关键码去寻找值的数据映射结构,该结构通过把关键码映射的位置去寻找存放值的地方 https://blog.csdn.net/duan19920101/article/det ...

  10. UVa 11210 - Chinese Mahjong 模拟, 枚举 难度: 0

    题目 https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&a ...