使用Anaconda配置環境

2021-08-09 23:38:21 字數 4657 閱讀 6915

python易用,但用好卻不易,其中比較頭疼的就是包管理和python不同版本的問題,特別是當你使用windows的時候。為了解決這些問題,有不少發行版的python,比如winpython、anaconda等,這些發行版將python和許多常用的package打包,方便pythoners直接使用,此外,還有virtualenv、pyenv等工具管理虛擬環境。

anaconda是乙個用於科學計算的python發行版,支援 linux, mac, windows系統,提供了包管理與環境管理的功能,可以很方便地解決多版本python並存、切換以及各種第三方包安裝問題。anaconda利用工具/命令conda來進行package和environment的管理,並且已經包含了python和相關的配套工具。

這裡先解釋下conda、anaconda這些概念的差別。conda可以理解為乙個工具,也是乙個可執行命令,其核心功能是包管理與環境管理。包管理與pip的使用類似,環境管理則允許使用者方便地安裝不同版本的python並可以快速切換。anaconda則是乙個打包的集合,裡面預裝好了conda、某個版本的python、眾多packages、科學計算工具等等,所以也稱為python的一種發行版。其實還有miniconda,顧名思義,它只包含最基本的內容——python與conda,以及相關的必須依賴項,對於空間要求嚴格的使用者,miniconda是一種選擇。

進入下文之前,說明一下conda的設計理念——conda將幾乎所有的工具、第三方包都當做package對待,甚至包括python和conda自身!因此,conda打破了包管理與環境管理的約束,能非常方便地安裝各種版本python、各種package並方便地切換。

anaconda的安裝

安裝時,會發現有兩個不同版本的anaconda,分別對應python 2.7和python 3.5,兩個版本其實除了這點區別外其他都一樣。後面我們會看到,安裝哪個版本並不本質,因為通過環境管理,我們可以很方便地切換執行時的python版本。(由於我常用的python是2.7和3.4,因此傾向於直接安裝python 2.7對應的anaconda)

對於mac、linux系統,anaconda安裝好後,實際上就是在主目錄下多了個資料夾(~/anaconda)而已,windows會寫入登錄檔。安裝時,安裝程式會把bin目錄加入path(linux/mac寫入~/.bashrc,windows新增到系統變數path),這些操作也完全可以自己完成。以linux/mac為例,安裝完成後設定path的操作是

echo 'export path="~/anaconda2/bin:$path"' >> ~/.bashrc
source ~/.bashrc
echo 'export path="~/anaconda2/bin:$path"' >> ~/.bashrc
source ~/.bashrc
配置好path後,可以通過which conda或conda –version命令檢查是否正確。假如安裝的是python 2.7對應的版本,執行python –version或python -v可以得到python 2.7.12 :: anaconda 4.1.1 (64-bit),也說明該發行版預設的環境是python 2.7。

conda的環境管理功能允許我們同時安裝若干不同版本的python,並能自由切換。對於上述安裝過程,假設我們採用的是python 2.7對應的安裝包,那麼python 2.7就是預設的環境(預設名字是root,注意這個root不是超級管理員的意思)。

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

conda create --name python34 python=3.4
activate python34 # for windows

source activate python34 # for linux & mac

python --version
deactivate python34 # for windows

source deactivate python34 # for linux & mac

conda remove --name python34 --all
conda create --name python34 python=3.4
activate python34 # for windows

source activate python34 # for linux & mac

python --version
deactivate python34 # for windows

source deactivate python34 # for linux & mac

conda remove --name python34 --all
使用者安裝的不同python環境都會被放在目錄~/anaconda/envs下,可以在命令中執行conda info -e檢視已安裝的環境,當前被啟用的環境會顯示有乙個星號或者括號。

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

如果直接按上面說的這麼改path,你會發現conda命令又找不到了(當然找不到啦,因為conda在~/anaconda/bin裡呢),這時候怎麼辦呢?方法有二:1. 顯式地給出conda的絕對位址 2. 在python34環境中也安裝conda工具(推薦)。

conda的包管理

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

例如,如果需要安裝scipy:

conda install scipy
conda list

conda install scipy
conda list
conda的一些常用操作如下:

conda list
conda list -n python34
conda search numpy
conda install -n python34 numpy
conda update -n python34 numpy
conda remove -n python34 numpy
conda list
conda list -n python34
conda search numpy
conda install -n python34 numpy
conda update -n python34 numpy
conda remove -n python34 numpy
前面已經提到,conda將conda、python等都視為package,因此,完全可以使用conda來管理conda和python的版本,例如

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

conda install anaconda
conda create -n python34 python=3.4 anaconda
conda install anaconda
conda create -n python34 python=3.4 anaconda
設定國內映象

conda config --add channels
conda config --set show_channel_urls yes
conda config --add channels
conda config --set show_channel_urls yes

Anaconda環境配置

二 配置環境變數 電腦 屬性 高階系統設定 環境變數 path 將anaconda安裝路徑新增入path如 d program files anaconda anaconda3.7 d program files anaconda anaconda3.7 scripts d program file...

Anaconda環境配置錯誤

安裝過程有斷續,以至於自己都不知道做過哪些操作,現在就很亂,還是老老實實整理記錄一波吧!我特麼就倒在配置環境上了,還學不學了,真tm煩人 1.第一次安裝的時候安裝tensorflow各種報錯,後面總總分析,覺得應該是anaconda的python版本沒有對應,所以在安裝後面的別的環境的時候各種報錯。...

pycharm配置Anaconda環境

在使用pycharm進行開發時,需要用到anaconda建立的環境,這裡環境的具體配置可以參考這篇部落格 講述了從零開始配置anaconda環境。但我今天寫下這篇部落格的目的不是為了從零開始配置,而是之前已經配置過,現在重新進行選擇。記錄以備之後忘記。pycharm選擇preferences 接下來...