以下教程會(huì)創(chuàng)建兩個(gè)版本的python開發(fā)環(huán)境,分別是一個(gè)默認(rèn)的2.7.5和一個(gè)3.4 .
首先你需要熟悉一下Anaconda的基礎(chǔ)命令,同時(shí)安裝的時(shí)候如果需要查閱手冊(cè)命令的,請(qǐng)查看官方文檔 。
官方文檔有困難的,下面有一部分熟悉命令。
這里大家可以先理清一個(gè)簡(jiǎn)單的概念,其實(shí)你的一個(gè)python環(huán)境,就是使用命令調(diào)用當(dāng)前目錄下的python編譯器。不同的版本,你可以理解為在不同文件夾下的不同python版本的編譯器。
創(chuàng)建新環(huán)境
創(chuàng)建一個(gè)名為python27的環(huán)境,指定Python版本是2.7(不用管是2.7.x,conda會(huì)為我們自動(dòng)尋找2.7.x中的最新版本)
conda crate --name python27 python=2.7 # python=2.7 指定python版本

靜靜的按回車等待安裝成功。安裝成功之后,我們可以到對(duì)應(yīng)的目錄查看一下。還記得你最初的Anaconda的安裝目錄么?這個(gè)時(shí)候可以去E:\Program Files\Anaconda2\envs 目錄下查看,就多了一個(gè)python27的目錄,說明你就安裝好了一個(gè)python27的環(huán)境。
同理再創(chuàng)建一個(gè)3.4.×的python環(huán)境
conda create --name python34 python=3.4
然后這個(gè)時(shí)候你就可以繼續(xù)查看E:\Program Files\Anaconda2\envs目錄下面的文件夾了,應(yīng)該會(huì)多了一個(gè)python27和python34,那么恭喜你, 成功的安裝了兩個(gè)版本的python開發(fā)環(huán)境。
- 查看你現(xiàn)在所在的版本分支:
conda info --e # 查看已經(jīng)創(chuàng)建的環(huán)境 -envs也可以
在這里你就會(huì)看到你所有的python版本,和你現(xiàn)在所在的分支

如上圖,你的開放環(huán)境中,應(yīng)該已經(jīng)有了三個(gè)開發(fā)環(huán)境,分別書root、python27、python34
-
切換到你所需要的分支
Linux, OS X:
source activate bunnies
Windows:
activate bunnies
比如你需要切換到python3.4的版本,那么你如果在windows下就直接運(yùn)行 activate python34 就好了

-
切換回root分支
Linux, OS X:
source deactivate
Windows:
deactivate
案例:安裝beautifulsoup4
以下所有的命令都是在python34這個(gè)環(huán)境下進(jìn)行的
# 首先你需要切換到python34這個(gè)環(huán)境下
activate python34
# 查看這個(gè)環(huán)境下的包列表
conda list

這個(gè)python34的環(huán)境報(bào)下面沒有beautifulsoup4,所以我們想要安裝一個(gè)
# 查找beautifulsoup4的包
conda search beautifulsoup4
# 為python34安裝beautifulsoup
# Tips:
# 你必須告訴conda你要安裝包的環(huán)境的名稱,不然會(huì)安裝在當(dāng)前環(huán)境下。
# 這里的環(huán)境就是python34
conda install --name python34 beautifulsoup4
# 查看你安裝的包
conda list
管理conda:
- 檢查conda已經(jīng)被安裝。
為了確保你已經(jīng)在正確的位置安裝好了conda,讓我們來檢查你是否已經(jīng)成功安裝好了Anaconda。在你的命令行終端窗口,輸入如下代碼:
conda --version #返回當(dāng)前安裝的Anaconda的版本信息
提示:如果你看到了錯(cuò)誤信息,檢查你是否在安裝過程中選擇了僅為當(dāng)前用戶按安裝,并且是否以同樣的賬戶來操作。確保用同樣的賬戶登錄安裝了之后重新打開命令行終端窗口。
- 升級(jí)當(dāng)前版本的conda
conda update conda
conda將會(huì)比較新舊版本并且告訴你哪一個(gè)版本的conda可以被安裝。它也會(huì)通知你伴隨這次升級(jí)其它包同時(shí)升級(jí)的情況。
如果新版本的conda可用,它會(huì)提示你輸入y進(jìn)行升級(jí).
proceed ([y]/n)? y
-
管理環(huán)境
- 創(chuàng)建新環(huán)境
這條命令將會(huì)給biopython包創(chuàng)建一個(gè)新的環(huán)境,位置在conda create --name snowflake biopython/envs/snowflakes.
小技巧:很多跟在–后邊常用的命令選項(xiàng),可以被略寫為一個(gè)短線加命令首字母。所以–name選項(xiàng)和-n的作用是一樣的。通過conda -h或conda –-help來看大量的縮寫。-
激活新環(huán)境
Linux,OS X: source activate snowflakes
Windows:activate snowflake`
小技巧:新的開發(fā)環(huán)境會(huì)被默認(rèn)安裝在你conda目錄下的envs文件目錄下。你可以指定一個(gè)其他的路徑;去通過
conda create -h了解更多信息吧。
小技巧:如果我們沒有指定安裝python的版本,donda會(huì)安裝我們最初安裝conda時(shí)所裝的那個(gè)版本的python。
* **創(chuàng)建第二個(gè)環(huán)境**
這次讓我們來創(chuàng)建并命名一個(gè)新環(huán)境,然后安裝另一個(gè)版本的python以及兩個(gè)包 Astroid 和 Babel。
conda create -n bunnies python=3 Astroid Babel
這將創(chuàng)建第二個(gè)基于python3 ,包含Astroid和 Babel包,稱為bunnies的新環(huán)境,在/envs/bunnies文件夾里。
小技巧:在此同時(shí)安裝你想在這個(gè)環(huán)境中運(yùn)行的包,
小提示:在你創(chuàng)建環(huán)境的同時(shí)安裝好所有你想要的包,在后來依次安裝可能會(huì)導(dǎo)致依賴性問題(貌似是,不太懂這個(gè)術(shù)語怎么翻)。
小技巧:你可以在conda create命令后邊附加跟多的條件,鍵入conda create –h 查看更多細(xì)節(jié)。
-
列出所有的環(huán)境
現(xiàn)在讓我們來檢查一下截至目前你所安裝的環(huán)境:
conda info -envis
你將會(huì)看到如下的環(huán)境列表:
conda environments:
snowflakes * /home/username/miniconda/envs/snowflakes
bunnies/home/username/miniconda/envs/bunnies
root/home/username/miniconda
-
確認(rèn)當(dāng)前環(huán)境
你現(xiàn)在處于哪個(gè)環(huán)境中呢?snowflakes還是bunnies?想要確定它,輸入下面的代碼:
conda info -envis
conda將會(huì)顯示所有環(huán)境的列表,當(dāng)前環(huán)境會(huì)顯示在一個(gè)括號(hào)內(nèi)。
(snowflakes)
注意:conda有時(shí)也會(huì)在目前活動(dòng)的環(huán)境前邊加上*號(hào)。
-
復(fù)制一個(gè)環(huán)境
通過克隆來復(fù)制一個(gè)環(huán)境。這兒將通過克隆snowfllakes來創(chuàng)建一個(gè)稱為flowers的副本。
conda create -n flowers --clone snowflakes
通過conda info –-envs來檢查環(huán)境
你現(xiàn)在應(yīng)該可以看到一個(gè)環(huán)境列表:flowers, bunnies, and snowflakes.
-
刪除一個(gè)環(huán)境
如果你不想要這個(gè)名為flowers的環(huán)境,就按照如下方法移除該環(huán)境:
conda remove -n flowers --all
為了確定這個(gè)名為flowers的環(huán)境已經(jīng)被移除,輸入以下命令:
conda info -e
flowers 已經(jīng)不再在你的環(huán)境列表里了,所以我們知道它被刪除了。