開源包管理系統(tǒng)和環(huán)境管理系統(tǒng) Conda

簡(jiǎn)介

在做 Python 開發(fā)時(shí),或許你接觸過virtualenv,他可以為不同的環(huán)境安裝不同的 Python 環(huán)境支持。如果你還知道virtualenvwrapper,你會(huì)發(fā)現(xiàn)它用起來更加方便,它是對(duì)virtualenv的封裝,可以很方便的創(chuàng)建和管理多個(gè)不同的開發(fā)環(huán)境。關(guān)于 virtualenv 和 virtualenvwrapper 的介紹可以參考以下內(nèi)容:

Linux下使用 virtualenv 虛擬獨(dú)立 Python 環(huán)境

Python 多環(huán)境管理擴(kuò)展 virtualenvwrapper

在 Python 中,還有一個(gè)更為強(qiáng)大的環(huán)境管理工具,即Conda。Conda 不僅可以管理不同的開發(fā)環(huán)境,還可以像 pip 一樣進(jìn)行包管理。Virtualenv 與 Conda 的功能功能差別不是很大,個(gè)人覺得 Virtualenv 在 Web 開發(fā)領(lǐng)域用得多些,Conda 則主要在科學(xué)計(jì)算環(huán)境中比較常用。

Conda 是開源的包管理系統(tǒng)和環(huán)境管理系統(tǒng),可以安裝軟件包的多個(gè)版本和依賴,而且各環(huán)境可以很方便的切換。Conda 支持 Linux,OS X 和 Windows 系統(tǒng)。Conda 主要為 Python 程序所創(chuàng)建,但是可以打包和分布任意軟件。Conda 有多個(gè)版本,包括 Anaconda, Anaconda Server 和 Miniconda。

安裝

Conda 的安裝可以參考官方文檔:http://conda.pydata.org/docs/installation.html,只需下載安裝程序安裝即可。

這里以在 Linux 下安裝miniconda為例, 安裝過程中默認(rèn)會(huì)在用戶主目錄下創(chuàng)建一個(gè) miniconda 的目錄,同時(shí)會(huì)在~/.bash_profile中追加配置。如果要卸載 Miniconda,只需要?jiǎng)h除相應(yīng)配置和文件即可:

rm -rf ~/miniconda ~/.condarc ~/.conda ~/.continuum

安裝完成后的 miniconda 目錄是 Conda 的默認(rèn)環(huán)境,該默認(rèn)環(huán)境被命名為 root,要激活默認(rèn)環(huán)境可以執(zhí)行如下命令:

source ~/miniconda/bin/activate root

用戶創(chuàng)建的其他環(huán)境則被存放在~/miniconda/envs中。

使用

1. 創(chuàng)建一個(gè)新環(huán)境

使用 conda 創(chuàng)建環(huán)境的方法如下:

conda create –name snowflakes ipython biopython

這將創(chuàng)建一個(gè)名為snowflakes新環(huán)境并存放在~/miniconda/envs/snowflakes中。--name參數(shù)用于指定環(huán)境名,也可以簡(jiǎn)寫成-n。命令最后可以接上在創(chuàng)建的同時(shí)需要一并安裝的庫(kù)和模塊,同時(shí)還可以指定庫(kù)或模塊的版本。例如創(chuàng)建一個(gè) Python3 環(huán)境:

conda create -n bunnies python=3 astroid babel

也可以通過克隆其他環(huán)境來創(chuàng)建一個(gè)新環(huán)境:

conda create –name flowers –clone snowflakes

2. 環(huán)境的激活與退出

要激活一個(gè)環(huán)境可以使用如下命令:

source ~/miniconda2/bin/activate bunnies

在有些電腦上可能需要指定全路徑,即:

source ~/miniconda2/bin/activate bunnies

激活成功后在當(dāng)前 shell 提示符前會(huì)加上環(huán)境名,像這樣:

(bunnies)konghy$[~] => conda --version

conda 4.0.5

要退出當(dāng)前環(huán)境,可以用如下命令:

source deactivate bunnies

3. 包的安裝及其管理

安裝包用conda install 命令,同時(shí)可以指定包的版本,例如:

conda install python=3.5

如果需要安裝到指定的環(huán)境中,則用如下命令:

conda install –name bunnies python=3.5

當(dāng)然,在安裝 conda 是都會(huì)默認(rèn)安裝pip工具,所有同樣可以用 pip 來安裝依賴包。

列出當(dāng)前環(huán)境中所有的包:

conda list

列出指定環(huán)境中所有的包:

conda -n bunnies

查找可安裝的軟件包:

conda search python

這樣 Conda 會(huì)做模糊匹配,也就是所有帶 “python” 字符的包都會(huì)被查找出來,如果只需要查找 python 包,則可用如下命令:

conda search –full-name python

包的更新:

conda update conda python ipython

刪除軟件包:

conda remove –name bunnies ipython

4. 環(huán)境管理

查看環(huán)境信息

查看系統(tǒng)中安裝的所有環(huán)境:

conda info –envs

查看 Conda 環(huán)境系統(tǒng)信息:

conda info –system

查看環(huán)境系統(tǒng)更加詳細(xì)的信息:

conda info –all

刪除環(huán)境:

刪除環(huán)境中指定的包:

conda remove –name flowers ipython biopython

徹底刪除環(huán)境:

conda env remove –name flowers

導(dǎo)出環(huán)境:

conda env export –name bunnies –file build_bunnies.yml

或者

conda list -e > spec-file.txt

從文件創(chuàng)建環(huán)境:

如果是用conda env export --name導(dǎo)出的文件,則可用下列命令創(chuàng)建:

conda env create -f build_bunnies.yml

如果是用conda list -e導(dǎo)出的文件,則用如下方式創(chuàng)建:

conda create –name –file

更新環(huán)境:

conda env update –name bunnies –file=environment.yml

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容