1. 程式人生 > >Anaconda Conda的使用

Anaconda Conda的使用

python 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中的最新版本)

conda?create?--name?python36?python=3.6

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

activate?python36?#?for?Windows
source?activate?python36?#?for?Linux?&?Mac

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


# 此時,再次輸入

python?--version

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


# 如果想返回默認的python 2.7環境,運行

deactivate?python36?#?for?Windows
source?deactivate?python36?#?for?Linux?&?Mac

# 刪除一個已有的環境

conda?remove?--name?python36?--all

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

conda create --name python36 python=3.6

?

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

activate?python36?#?for?Windows
source?activate?python36?#?for?Linux?&?Mac

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

?

# 此時,再次輸入

python?--version


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

?

# 如果想返回默認的python 2.7環境,運行

deactivate?python36?#?for?Windows
source?deactivate?python36?#?for?Linux?&?Mac

?

# 刪除一個已有的環境

conda?remove?--name?python36?--all

用戶安裝的不同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

conda?install?scipy

# conda會從從遠程搜索scipy的相關信息和依賴項目,對於python 3.6,conda會同時安裝numpy和mkl(運算加速的庫)


# 查看已經安裝的packages

conda?list

# 最新版的conda是從site-packages文件夾中搜索已經安裝的包,不依賴於pip,因此可以顯示出通過各種方式安裝的包


# 安裝scipy

conda?install?scipy

# conda會從從遠程搜索scipy的相關信息和依賴項目,對於python 3.6,conda會同時安裝numpy和mkl(運算加速的庫)

?

# 查看已經安裝的packages

conda?list

# 最新版的conda是從site-packages文件夾中搜索已經安裝的包,不依賴於pip,因此可以顯示出通過各種方式安裝的包

conda的一些常用操作如下:



# 查看當前環境下已安裝的包

conda?list

# 查看某個指定環境的已安裝包

conda?list?-n?python36

# 查找package信息

conda?search?numpy

# 安裝package

conda?install?-n?python36?numpy

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

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


# 更新package

conda?update?-n?python36?numpy

# 刪除package

conda?remove?-n?python36?numpy

# 查看當前環境下已安裝的包

conda?list

?

# 查看某個指定環境的已安裝包

conda?list?-n?python36

?

# 查找package信息

conda?search?numpy

?

# 安裝package

conda?install?-n?python36?numpy

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

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

?

# 更新package

conda?update?-n?python36?numpy

?

# 刪除package

conda?remove?-n?python36?numpy

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



# 更新conda,保持conda最新

conda?update?conda

# 更新anaconda

conda?update?anaconda

# 更新python

conda?update?python

# 假設當前環境是python 3.6, conda會將python升級為3.6.x系列的當前最新版本


# 更新conda,保持conda最新

conda?update?conda

?

# 更新anaconda

conda?update?anaconda

?

# 更新python

conda?update?python

# 假設當前環境是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包集合

conda?install?anaconda

# 結合創建環境的命令,以上操作可以合並為

conda?create?-n?python36?python=3.6?anaconda

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


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

conda?install?anaconda

?

# 結合創建環境的命令,以上操作可以合並為

conda?create?-n?python36?python=3.6?anaconda

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

設置國內鏡像


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



# 添加Anaconda的TUNA鏡像

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

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


# 設置搜索時顯示通道地址

conda?config?--set?show_channel_urls?yes

# 添加Anaconda的TUNA鏡像

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

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

?

# 設置搜索時顯示通道地址

conda?config?--set?show_channel_urls?yes

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


Anaconda Conda的使用