天天看點

39 Anaconda - Python版本管理工具

Anaconda and conda

Anaconda是一個用于科學計算的Python發行版,支援 Linux, Mac, Windows系統,提供了包管理與環境管理的功能,可以很友善地解決多版本python并存、切換以及各種第三方包安裝問題。**Anaconda利用工具(指令)**conda來進行package和environment的管理,并且已經包含了Python和相關的配套工具。

Anaconda中會有一個Python為主版本,其餘版本的Python安裝在Anaconda\envs目錄下

可以認為conda是Anaconda的靈魂

conda

conda和Anaconda的關系

Anaconda是一個打包的集合,裡面預裝好了conda、某個版本的python、衆多packages、科學計算工具等。

其實還有Miniconda,它隻包含最基本的内容python與conda,以及相關的必須依賴項。

conda可以認為是一個工具,或者一個可執行的指令,其核心功能是包管理與環境管理。

  • 包管理與pip的使用類似;
  • 環境管理則允許使用者友善地安裝不同版本的python并可以快速切換。

conda将所有的工具、第三方包都當做package對待,甚至包括python和conda自身!

是以,conda打破了包管理與環境管理的限制,能非常友善地安裝各種版本python、各種package并友善地切換。

conda cmd windows

conda管理

conda --version
# 更新conda
conda update conda           

環境管理

conda create --name filename biopython
# 安裝Python34, conda僅安裝python3.4需要的必須項
conda create -n Python34 python=3.4  # -n == --name
# 安裝環境的同時, 引入six和babel包
conda create -n Python34 python=3.4 six babel           

filename = 在AnacondaX\envs\下建立的檔案名,并将biopython安裝在該目錄下

biopython = 軟體名稱

列出所有的環境

# 檢視已安裝的環境和目前所使用的Python版本(分支)
conda info -e # -e == --envs           
與git類似,正在使用的環境會在前面标注*

使用和退出某個版本的Python

# 激活某個Python環境, 激活的環境為Anaconda2\envs\下的檔案夾名字
activate Python34
# 傳回預設的環境
deactivate Python34           

克隆環境

# 克隆originName的環境, 并命名為cloneName
conda create --name cloneName --clone originName           

删除環境

# 删除名為Python34的環境
conda remove --name python34 --all           

Python管理

# 查找package資訊
conda search numpy  # 查找numpy的資訊
conda search python # 查找可安裝的Python版本資訊 

# 檢視已經安裝的packages
conda list
# 檢視某個指定環境的已安裝包
conda list -n Python34

# 在目前環境下安裝anaconda包集合, 預設為目前使用環境
conda install anaconda
conda install beautifulsoup4 --name pyVersion # 給pyVersion引入beautifulsoup4
# 為目前環境導入package
pip install package
# 安裝package,如果不用-n指定環境名稱, 則被安裝在目前活躍環境
conda install -n python34 numpy

# 删除Python34中的某個包
conda remove -n Python34 package
# 删除Python34中的numpy
conda remove -n python34 numpy
# 删除Python34的環境
conda remove -n Python34 --all

# 更新package
conda update -n python34 numpy
# 更新conda,保持conda最新
conda update conda
# 更新anaconda
conda update anaconda
# 更新python,假設目前環境是python3.4, conda會将python更新為3.4.x系列的目前最新版本
conda update python           
使用者安裝的不同python環境都會被放在目錄

anaconda/envs

Anaconda安裝的是Python某一系列中的最高版本

如果不指定Python環境,預設為目前工作環境

設定國内鏡像

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

# 添加Anaconda的TUNA鏡像, 位址不需要加引号
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
# 設定搜尋時顯示通道位址
conda config --set show_channel_urls yes           

參考網址

  1. http://python.jobbole.com/86236/
  2. https://conda.io/docs/test-drive.html