https://www.waitalone.cn/anaconda-install-error.html

 
 
 
 

3,224

 

1、Anaconda概述

Anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。Anaconda利用工具/命令conda来进行package和environment的管理,并且已经包含了Python和相关的配套工具。

这里先解释下conda、anaconda这些概念的差别。

conda可以理解为一个工具,也是一个可执行命令,其核心功能是包管理与环境管理。

包管理与pip的使用类似,环境管理则允许用户方便地安装不同版本的python并可以快速切换。

Anaconda则是一个打包的集合,里面预装好了conda、某个版本的python、众多packages、科学计算工具等等,所以也称为Python的一种发行版。

其实还有Miniconda,顾名思义,它只包含最基本的内容——python与conda,以及相关的必须依赖项,对于空间要求严格的用户,Miniconda是一种选择。

进入下文之前,说明一下conda的设计理念——conda将几乎所有的工具、第三方包都当做package对待,甚至包括python和conda自身!因此,conda打破了包管理与环境管理的约束,能非常方便地安装各种版本python、各种package并方便地切换。

2、Anaconda的安装

Anaconda的下载页参见官网下载,Linux、Mac、Windows均支持。

安装时,会发现有两个不同版本的Anaconda,分别对应Python 2.7和Python 3.5,两个版本其实除了这点区别外其他都一样。后面我们会看到,安装哪个版本并不本质,因为通过环境管理,我们可以很方便地切换运行时的Python版本。(由于我常用的Python是2.7和3.4,因此倾向于直接安装Python 2.7对应的Anaconda)

这里我安装miniconda,下载地址如下:

https://conda.io/miniconda.html

2.1 安装报错编码错误处理

出现这个窗口以后,不要点确定,然后进入到anaconda安装文件夹,一般是C:\ProgramData\Anaconda2,如果你提示的错误是:UnicodeEncodeError: 'ascii' codec can't encode characters in position 3-4 blabla,那么进入Lib文件夹,用编辑器打开_nsis.py,在import sys下面加上这两句:

1 reload(sys)
2 sys.setdefaultencoding( "utf-8" )

然后点确定,再点重试即可安装完成。

3、Anaconda的使用

3.1 管理包

conda 是一种只能通过命令行来使用的程序。类似于pip那样可以对Python库的包进行管理。

安装命令:

01 # 安装命令
02 conda install package_name
03 # 安装numpy,输入
04 conda install numpy
05 # 安装 matplotlib
06 conda install matplotlib
07 # 查看已安装的包
08 conda list
09 # 搜索安装包
10 conda search search_term
11 # 同时安装多个包
12 conda install numpy scipy pandas
13 # 安装指定版本的包
14 conda install numpy=1.11
15 # 卸载包
16 conda remove package_name
17 # 更新包
18 conda update package_name
19 # 更新环境中的所有包
20 conda update --all

加速conda下载速度,使用国内镜像源:

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

3.2 管理环境

除了管理包之外,conda 还是虚拟环境管理器。它类似于另外两个很流行的环境管理器,即 virtualenv 和 pyenv。

环境可以分隔不同项目的包。因为我们使用的时候会依赖于某个库的不同版本的代码或在py2和py3之间进行切换。

也可以将环境中的包的列表导出为文件,然后将该文件与代码包括在一起。这能让其他人轻松加载代码的所有依赖项。

pip 提供了类似的功能,即 pip freeze > requirements.txt

创建环境:

conda create -n env_name list of packages,

-n env_name 设置环境的名称(-n 是指名称),

而 list of packages 是要安装在环境中的包的列表。

创建环境时,可以指定要安装在环境中的 Python 版本。

conda create -n py3 python=3 或 conda create -n py2 python=2 。

要安装特定版本(例如 Python 3.3),请使用 conda create -n py python=3.3。

01 # 基于 python3.6 创建一个名为test_py3 的环境
02 conda create --name test_py3 python=3.6
03  
04 # 基于 python2.7 创建一个名为test_py2 的环境
05 conda create --name test_py2 python=2.7
06  
07 # 激活 test 环境
08 activate test_py2  # windows
09 source activate test_py2 # linux/mac
10  
11 # 切换到python3
12 activate test_py3

3.3 进入环境

创建了环境后,在 OSX/Linux 上使用 source activate my_env 进入环境。在 Windows 上,请使用 activate my_env。

要离开环境,请键入 source deactivate(在 OSX/Linux 上)。在 Windows 上,请使用 deactivate。

3.4 保存和加载环境

共享环境这项功能确实很有用,它能让其他人安装你的代码中使用的所有包,并确保这些包的版本正确。可以使用

conda env export > environment.yaml

将包保存为 YAML。

第一部分 conda env export 写出环境中的所有包(包括 Python 版本)。

第二部分 > environment.yaml 将导出的文本写入到 YAML 文件 environment.yaml 中。现在可以共享此文件,而且其他人能够创建和你用于项目相同的环境。

要通过环境文件创建环境,请使用 conda env create -f environment.yaml。这会创建一个新环境,而且它具有在 environment.yaml 中列出的同一库。

3.5 列出环境

如果忘记了环境的名称,可以使用 conda env list 或conda info -e列出你创建的所有环境。你会看到环境的列表,而且你当前所在环境的旁边会有一个星号。默认的环境(即当你不在环境中时使用的环境)名为 root。

3.6 删除环境

不再使用某些环境,可以使用 conda env remove -n env_name 删除指定的环境(在这里名为 env_name)。

3.7 共享环境

在 GitHub 上共享代码时,最好同样创建环境文件并将其包括在代码库中。这能让其他人更轻松地安装你的代码的所有依赖项。对于不使用 conda 的人,我通常还会使用 pip freeze(在此处了解详情)将一个 pip requirements.txt 文件包括在内。

pip freeze > requirements.txt

pip install -r requirements.txt

4、错误处理

安装好以后,正常安装django,发现在创建项目的时候会报编码 错误,"UnicodeDecodeError: 'ascii' codec can't decode"

解决办法:

在anaconda的安装路径下找到Lib/mimetypes.py,在import sys之后加入如下代码

1 if sys.getdefaultencoding() != 'gbk':
2     reload(sys)
3     sys.setdefaultencoding('gbk')

参考网址:

https://www.zhihu.com/question/42263480

http://python.jobbole.com/86236/

https://foofish.net/compatible-py2-and-py3.html

https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/

Anaconda(miniconda)安装及使用--转的更多相关文章

  1. Anaconda 虚拟环境安装及应用

    首先要安装Anaconda 下载网址:https://www.anaconda.com/distribution/#download-section      Miniconda下载网址:https: ...

  2. Miniconda安装scrapy教程

    一.背景说明 前两天想重新研究下Scrapy,当时的环境是PyCharm社区版+Python 3.7.使用pip安装一直报错 “distutils.errors.DistutilsPlatformEr ...

  3. Anaconda的安装和详细介绍(带图文)

    Anacond的介绍 Anaconda指的是一个开源的Python发行版本,其包含了conda.Python等180多个科学包及其依赖项. 因为包含了大量的科学包,Anaconda 的下载文件比较大( ...

  4. Miniconda 安装 & Pip module 安装 & Shell 脚本调用 Miniconda 虚拟环境手册(实战项目应用)

    (实战项目应用) 1. 下载Miniconda 两个安装方式: 方式1:wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Min ...

  5. miniconda安装及使用

    conda环境配置 安装conda [清华源下载地址](https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/) 官网或百度云网盘下载对应版本 ...

  6. anaconda 的安装

    进官网下载anaconda, 根据需要下载对应python版本Anaconda软件. https://www.anaconda.com/download/#windows 下载完双击 Anaconda ...

  7. windows+Pycharm+Anaconda下安装opencv

    本人最近开始使用pycharm,之前一直是在Anaconda环境下跑的程序,在Anaconda Navigator下运行,但发现Jupyter Notebook界面下的程序提示不是很人性化,所以迁移到 ...

  8. pip软件包安装 + Anaconda软件库安装 教程

    PIP软件包安装(适用于Ubuntu和Windows10): 下载pip的安装包,官网链接如下:https://pypi.python.org/pypi/pip 我选择了Source源的安装方式,单击 ...

  9. windows下Anaconda的安装与配置正解

    一.下载anaconda 第一步当然是下载anaconda了,官方网站的下载需要用迅雷才能快点,或者直接到清华大学镜像站下载. 清华大学提供了镜像,从这个镜像下载速度很快,地址: https://mi ...

随机推荐

  1. 微信小程序之 SideBar(侧栏分类)

    项目目录: 模拟数据: utils / data.js function getSData() { var data = [ { "id": 1, "tree" ...

  2. 数据库分表和分库的原理及基于thinkPHP的实现方法

    为什么要分表,分库: 当我们的数据表数据量,訪问量非常大.或者是使用频繁的时候,一个数据表已经不能承受如此大的数据訪问和存储,所以,为了减轻数据库的负担,加快数据的存储,就须要将一张表分成多张,及将一 ...

  3. linux之rsync远程数据同步备份

    rsync服务是一种高效的远程数据备份的工具,该服务的port号为873, 是Liunx下的一种非独立服务.由xinetd超级服务管理,取代监听873port. 长处: 1.rsync能够利用ssh和 ...

  4. 【转】Selenium2学习路线

    课程大纲:第一部分:基础入门 第一课: SELENIUM2的原理介绍及环境搭建本节课主要讲解SELENIUM2的原理,让大家了解SELENIUM2的发展历程,同时解惑大家对自动化测试中产生的一些误区. ...

  5. Hibernate4之session核心方法

    在学习session的核心方法之前,我们先了解下hibernate中几种对象的状态: 暂时状态:这样的状态就好像咱们公司请的暂时员工一样,他在公司里没有相关的资料和id. 特点:在使用代理主键的情况下 ...

  6. C++ 函数部分(2)

    C++函数的递归调用 函数可以直接或间接地调用自身,称为递归调用.所谓直接调用自身,就是指在一个函数的函数体中出现了对自身的调用表达式,例如: void fun1(void) { //do somet ...

  7. mysql workbench快捷键

    注释/取消注释, ctrl+/   暂时不知道怎么设置(原配置是 ctrl+divide)格式化sql语句(美化sql语句), ctrl+b

  8. 洛谷P2943 清理——DP

    题目:https://www.luogu.org/problemnew/show/P2943 一眼看去就有个 n^2 的做法:f[i] = min{ f[j] + num( i - j ) * num ...

  9. 【转】浏览器中输入url后发生了什么

    原文地址:http://www.jianshu.com/p/c1dfc6caa520 在学习前端的过程中经常看到这样一个问题:当你在浏览器中输入url后发生了什么?下面是个人学习过程中的总结,供个人复 ...

  10. 855E

    数位DP 昨天的B题,excited 又学习了一下数位dp... 数位dp要考虑几个比较重要的东西:1.前导0,2.天际线,3.记忆化的条件,4.细节 经常数位dp会问我们l->r区间中满足某某 ...