Anaconda入门:安装及包与环境的管理(conda命令)

1.Anaconda是什么?

Anaconda在英文中是“蟒蛇”,麻辣鸡(Nicki Minaj妮琪·米娜)有首歌就叫《Anaconda》
anaconda
anaconda

,表示像蟒蛇一样性感妖娆的身体。

这里,Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。 因为包含了大量的科学包,Anaconda 的下载文件比较大(约 500 MB),如果只需要某些包,或者需要节省带宽或存储空间,也可以使用Miniconda这个较小的发行版(仅包含conda和 Python)。

Anaconda的图标
loggo
loggo

就像一个收尾互相咬住的“蟒蛇”。

你可能已经安装了 Python,那么为什么还需要 Anaconda?有以下3个原因:

  1. Anaconda 附带了一大批常用数据科学包,它附带了 conda、Python 和 150 多个科学包及其依赖项。因此你可以立即开始处理数据。
  2. 管理包。
    Anaconda 是在 conda(一个包管理器和环境管理器)上发展出来的。
    在数据分析中,你会用到很多第三方的包,而conda(包管理器)可以很好的帮助你在计算机上安装和管理这些包,包括安装、卸载和更新包。
  3. 管理环境。
    比如你在A项目中用了 Python 2,而另一个项目B却要求使用Python 3,而同时安装两个Python版本可能会造成许多混乱和错误。这时候 conda就可以帮助你为不同的项目建立不同的运行环境。
    还有很多项目使用的包版本不同,比如不同的pandas版本,不可能同时安装两个 Numpy 版本,你要做的应该是,为每个 Numpy 版本创建一个环境,然后项目的对应环境中工作。这时候conda就可以帮你做到。

2.安装Anaconda

Anaconda 可用于多个平台( Windows、Mac OS X 和 Linux)。你可以在Anaconda官网上找到安装程序和安装说明。根据你的操作系统是32位还是64位选择对应的版本下载。

实际上,你选择对应python2或python3的哪一个版本是无所谓的,它只代表安装后缺省的python版本,因为你可以创建不同版本的环境,并可随时切换。

安装过程中,建议不选在将Anaconda目录加入到PATH环境变量中,以免与单独安装的Python路径产生冲突。执行conda命令时,可打开Anaconda Prompt,这是Anaconda自带的终端,启动时会设置必要的环境变量,令你可运行conda命令。若汝用普通的windows cmd命令,则可能会出现找不到命令的提示。

安装Anaconda后,需更新所有包,以防因为某些包的版本比较老旧,产生版本依赖关系错误。 在终端输入更新所有包的命令:conda upgrade --all,并在提示是否更新时输入y(Yes)让更新继续。

conda命令从conda cloud下载更新包,由于在境外,下载速度比较慢,甚至会由于众所周知的原因,无法下载,报错:CondaHTTPError: HTTP 000 CONNECTION FAILED之类的网络错误,可以用下面的方法解决:
在终端中运行如下命令:

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

添加清华大学的镜像服务器。

如果用命令行添加不上,可以在用户目录找到.condarcw文件。这个配置文件在 ~/.condarc (Linux/Mac) 或 C:\Users\当前用户名.condarc (Windows):

channels:
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
 - defaults
show_channel_urls: true

如果使用conda安装包的时候还是很慢,那么可以考虑使用pip来安装,同样把 pip 的镜像源地址也改成国内的,豆瓣源速度比较快。修改 ~/.pip/pip.conf (Linux/Mac) 或 C:\Users\当前用户名\pip\pip.ini (Windows) 配置:

[global]
trusted-host =  pypi.douban.com
index-url = http://pypi.douban.com/simple

3.管理包

安装Anaconda后,就可以用conda命令方便的管理包了。

3.1 安装包

命令:

conda install package_name

例如:安装pandas,输入

condda install pandas

安装多个包,如同时安装pandas、numpy包:

conda install pandas numpy

指定包的版本号:

conda install numpy=1.10

conda会自动安装依赖项,如scipy包依赖于numpy包,那么

conda install scipy

会自动安装numpy包,如果还未安装的话。

3.2 卸载包

命令:conda remove package_name
例如,卸载padas包:
conda remove pandas

3.3 更新包

命令:

conda update package_name

更新所有的包,加--all选项:conda update -all

3.4 列出所有的包

命令:conda list

3.5 搜索包

命令:conda search search_term
例如,想检查一下numpy包是否已经安装,可使用conda search num模糊查找列表中是否包含numpy包。

在conda中,anything is a package。conda本身可以看做是一个包,python环境也可以看做是一个包,anaconda也是一个包,因此除了普通的第三方包支持更新之外,这三个包也支持更新。

# 更新conda本身
conda update conda
# 更新anaconda应用
conda update anaconda
#更新python,假设当前python环境版本是3.6.3,而最新版本是3.6.3,那么就会升级到3.6.3。
conda update python

4.管理环境

conda可以为不同的项目创建不同的环境。

4.1 创建环境

命令:conda create --name env_name packages_name
--name选项可简化为-n,指出要创建的环境名称,并可以在创建环境时安装包。
例如:conda create -n py3 pandas创建了名称为py3的环境,并安装pandas包。
创建环境的时候,可以指定python的版本:
conda create -n py3 python=3
环境py3中会安装最新版本的python3。
conda create -n py3 python=3.6
指定使用3.6版本的python。

4.2 激活环境

windows中使用activate env_name命令,OS/X和linux中使用source activate env_name命令激活环境。
例如:activate py3进入py3环境后可使用conda list命令查看py3
环境中已经安装的包。在新的环境中,可使用conda install package_name命令继续安装其他需要的包。

4.3 离开环境

命令:deactivate (windows适用)或source deactivate(OS/X或Linux适用)。

4.4 共享环境

如果你想向他人共享你自己创建的环境,以供其他项目用你项目的配置,主要是保持包的版本一致。就可以使用conda env export > enviroment.yml命令将源环境的包的配置数据保存到enviroment.yml文件中,其他项目就可以在目标环境中,执行命令conda env update -f path/to/enviroment.yml将目标环境更新为与源环境完全一样。

对于不使用conda的情况下,python的pip命令也是可以做到这一点的:

pip freeze > enviroment.txt #将环境配置导出到enviroment.txt文本文件中。
pip install -r /path/to/enviroment.txt #恢复环境

4.5 列出环境

命令:conda env list列出所有的环境,当前激活的环境对应的目录前会显示一个*号。

4.6 删除环境

命令:conda env remove -n env_name

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,519评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,842评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,544评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,742评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,646评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,027评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,513评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,169评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,324评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,268评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,299评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,996评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,591评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,667评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,911评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,288评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,871评论 2 341

推荐阅读更多精彩内容