天天看點

Anaconda Conda的使用

Anaconda安裝、配置流程如下:

1、下載下傳Anaconda、安裝

2、配置PATH(bashrc或環境變量),更改TUNA鏡像源

3、建立所需的不用版本的python環境

cheat-sheet 下載下傳:

http://conda.pydata.org/docs/_downloads/conda-cheatsheet.pdf

Conda的環境管理功能允許我們同時安裝若幹不同版本的Python,并能自由切換。對于上述安裝過程,假設我們采用的是Python 2.7對應的安裝包,那麼Python 2.7就是預設的環境(預設名字是root,注意這個root不是超級管理者的意思)。

假設我們需要安裝Python 3.6,此時,我們需要做的操作如下:

# 建立一個名為python36的環境,指定Python版本是3.6(不用管是3.6.x,conda會為我們自動尋找3.6.x中的最新版本)

<code>conda create </code><code>-</code><code>-</code><code>name python36 python</code><code>=</code><code>3.6</code>

# 安裝好後,使用activate激活某個環境

<code>activate python36 </code><code># for Windows</code>

<code>source activate python36 </code><code># for Linux &amp; Mac</code>

# 激活後,會發現terminal輸入的地方多了python36的字樣,實際上,此時系統做的事情就是把預設2.7環境從PATH中去除,再把3.6對應的指令加入PATH

# 此時,再次輸入

<code>python </code><code>-</code><code>-</code><code>version</code>

# 可以得到`Python 3.6.5 :: Anaconda 4.1.1 (64-bit)`,即系統已經切換到了3.6的環境

# 如果想傳回預設的python 2.7環境,運作

<code>deactivate python36 </code><code># for Windows</code>

<code>source deactivate python36 </code><code># for Linux &amp; Mac</code>

# 删除一個已有的環境

<code>conda remove </code><code>-</code><code>-</code><code>name python36 </code><code>-</code><code>-</code><code>all</code>

conda create --name python36 python=3.6

使用者安裝的不同python環境都會被放在目錄~/anaconda/envs下,可以在指令中運作conda info -e檢視已安裝的環境,目前被激活的環境會顯示有一個星号或者括号。

說明:有些使用者可能經常使用python 3.6環境,是以直接把~/anaconda/envs/python36下面的bin或者Scripts加入PATH,去除anaconda對應的那個bin目錄。這個辦法,怎麼說呢,也是可以的,但總覺得不是那麼elegant……

如果直接按上面說的這麼改PATH,你會發現conda指令又找不到了(當然找不到啦,因為conda在~/anaconda/bin裡呢),這時候怎麼辦呢?

方法有二:

1. 顯式地給出conda的絕對位址 

2. 在python36環境中也安裝conda工具(推薦)。

Conda的包管理

Conda的包管理就比較好了解了,這部分功能與pip類似。

例如,如果需要安裝scipy:

# 安裝scipy

<code>conda install scipy</code>

# conda會從從遠端搜尋scipy的相關資訊和依賴項目,對于python 3.6,conda會同時安裝numpy和mkl(運算加速的庫)

# 檢視已經安裝的packages

<code>conda </code><code>list</code>

# 最新版的conda是從site-packages檔案夾中搜尋已經安裝的包,不依賴于pip,是以可以顯示出通過各種方式安裝的包

conda的一些常用操作如下:

# 檢視目前環境下已安裝的包

# 檢視某個指定環境的已安裝包

<code>conda </code><code>list</code> <code>-</code><code>n python36</code>

# 查找package資訊

<code>conda search numpy</code>

# 安裝package

<code>conda install </code><code>-</code><code>n python36 numpy</code>

# 如果不用-n指定環境名稱,則被安裝在目前活躍環境

# 也可以通過-c指定通過某個channel安裝

# 更新package

<code>conda update </code><code>-</code><code>n python36 numpy</code>

# 删除package

<code>conda remove </code><code>-</code><code>n python36 numpy</code>

前面已經提到,conda将conda、python等都視為package,是以,完全可以使用conda來管理conda和python的版本,例如

# 更新conda,保持conda最新

<code>conda update conda</code>

# 更新anaconda

<code>conda update anaconda</code>

# 更新python

<code>conda update python</code>

# 假設目前環境是python 3.6, conda會将python更新為3.6.x系列的目前最新版本

補充:如果建立新的python環境,比如3.6,運作conda create -n python36 python=3.6之後,conda僅安裝python 3.6相關的必須項,如python, pip等,如果希望該環境像預設環境那樣,安裝anaconda集合包,隻需要:

# 在目前環境下安裝anaconda包集合

<code>conda install anaconda</code>

# 結合建立環境的指令,以上操作可以合并為

<code>conda create </code><code>-</code><code>n python36 python</code><code>=</code><code>3.6</code> <code>anaconda</code>

# 也可以不用全部安裝,根據需求安裝自己需要的package即可

設定國内鏡像

如果需要安裝很多packages,你會發現conda下載下傳的速度經常很慢,因為Anaconda.org的伺服器在國外。所幸的是,清華TUNA鏡像源有Anaconda倉庫的鏡像,我們将其加入conda的配置即可:

# 添加Anaconda的TUNA鏡像

<code>conda config </code><code>-</code><code>-</code><code>add channels https:</code><code>/</code><code>/</code><code>mirrors.tuna.tsinghua.edu.cn</code><code>/</code><code>anaconda</code><code>/</code><code>pkgs</code><code>/</code><code>free</code><code>/</code>

# TUNA的help中鏡像位址加有引号,需要去掉

# 設定搜尋時顯示通道位址

<code>conda config </code><code>-</code><code>-</code><code>set</code> <code>show_channel_urls yes</code>

執行完上述指令後,會生成~/.condarc(Linux/Mac)或C:UsersUSER_NAME.condarc檔案,記錄着我們對conda的配置,直接手動建立、編輯該檔案是相同的效果。

本文轉自 喵來個魚 51CTO部落格,原文連結:http://blog.51cto.com/m51cto/2048461,如需轉載請自行聯系原作者