1、anaconda概述
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並方便地切換。
2、anaconda的安裝
安裝時,會發現有兩個不同版本的anaconda,分別對應python 2.7和python 3.5,兩個版本其實除了這點區別外其他都一樣。後面我們會看到,安裝哪個版本並不本質,因為通過環境管理,我們可以很方便地切換執行時的python版本。(由於我常用的python是2.7和3.4,因此傾向於直接安裝python 2.7對應的anaconda)
2.1 安裝報錯編碼錯誤處理
出現這個視窗以後,不要點確定,然後進入到anaconda安裝資料夾,一般是c:\programdata\anaconda2,如果你提示的錯誤是:unicodeencodeerror: 'ascii' codec can't encode characters in position 3-4 blabla,那麼進入lib資料夾,用編輯器開啟_nsis.py,在import sys下面加上這兩句:
reload(sys)
sys.setdefaultencoding( "utf-8")
然後點確定,再點重試即可安裝完成。
3、anaconda的使用
3.1 管理包
conda 是一種只能通過命令列來使用的程式。類似於pip那樣可以對python庫的包進行管理。
安裝命令:
# 安裝命令
conda installpackage_name
# 安裝numpy,輸入
conda installnumpy
# 安裝 matplotlib
conda installmatplotlib
# 檢視已安裝的包
conda list
# 搜尋安裝包
conda search search_term
# 同時安裝多個包
conda installnumpy scipy pandas
# 安裝指定版本的包
conda installnumpy=1.11
# 解除安裝包
conda remove package_name
# 更新包
conda update package_name
# 更新環境中的所有包
conda update --all
conda config --add channels
conda config --add channels
conda config --setshow_channel_urls yes
3.2 管理環境
除了管理包之外,conda 還是虛擬環境管理器。它類似於另外兩個很流行的環境管理器,即 virtualenv 和 pyenv。
環境可以分隔不同專案的包。因為我們使用的時候會依賴於某個庫的不同版本的**或在py2和py3之間進行切換。
也可以將環境中的包的列表匯出為檔案,然後將該檔案與**包括在一起。這能讓其他人輕鬆載入**的所有依賴項。
pip 提供了類似的功能,即 pip freeze > requirements.txt
建立環境:
conda create -n env_name list of packages,
-n env_name 設定環境的名稱(-n 是指名稱),
而 list of packages 是要安裝在環境中的包的列表。
建立環境時,可以指定要安裝在環境中的 python 版本。
conda create -n py3 python=3 或 conda create -n py2 python=2 。
要安裝特定版本(例如 python 3.3),請使用 conda create -n py python=3.3。
# 基於 python3.6 建立乙個名為test_py3 的環境
conda create --name test_py3 python=3.6
# 基於 python2.7 建立乙個名為test_py2 的環境
conda create --name test_py2 python=2.7
# 啟用 test 環境
activate test_py2 # windows
sourceactivate test_py2 # linux/mac
# 切換到python3
activate test_py3
3.3 進入環境
建立了環境後,在 osx/linux 上使用 source activate my_env 進入環境。在 windows 上,請使用 activate my_env。
要離開環境,請鍵入 source deactivate(在 osx/linux 上)。在 windows 上,請使用 deactivate。
3.4 儲存和載入環境
共享環境這項功能確實很有用,它能讓其他人安裝你的**中使用的所有包,並確保這些包的版本正確。可以使用
conda env export > environment.yaml
將包儲存為 yaml。
第一部分 conda env export 寫出環境中的所有包(包括 python 版本)。
第二部分 > environment.yaml 將匯出的文字寫入到 yaml 檔案 environment.yaml 中。現在可以共享此檔案,而且其他人能夠建立和你用於專案相同的環境。
要通過環境檔案建立環境,請使用 conda env create -f environment.yaml。這會建立乙個新環境,而且它具有在 environment.yaml 中列出的同一庫。
3.5 列出環境
如果忘記了環境的名稱,可以使用 conda env list 或conda info -e列出你建立的所有環境。你會看到環境的列表,而且你當前所在環境的旁邊會有乙個星號。預設的環境(即當你不在環境中時使用的環境)名為 root。
3.6 刪除環境
不再使用某些環境,可以使用 conda env remove -n env_name 刪除指定的環境(在這裡名為 env_name)。
3.7 共享環境
pip freeze > requirements.txt
pip install -r requirements.txt
4、錯誤處理
安裝好以後,正常安裝django,發現在建立專案的時候會報編碼 錯誤,"unicodedecodeerror: 'ascii' codec can't decode"
解決辦法:
在anaconda的安裝路徑下找到lib/mimetypes.py,在import sys之後加入如下**
ifsys.getdefaultencoding() != 'gbk':
reload(sys)
sys.setdefaultencoding('gbk')
參考**:
Python TensorFlow安裝及使用說明
python tensorflow安裝及使用說明 1 安裝 python 直譯器 anaconda。不需額外安裝,安裝時切記勾選 add anaconda to my path environment variable 檢驗安裝是否成功 anaconda v 或 conda list 2 安裝 cu...
Python miniconda的安裝及使用
今天開始學習python,記錄一下。開啟cmd終端或者anaconda prompt 快捷鍵 win r 然後輸入cmd,回車 分別在cmd終端或者anaconda prompt裡貼上下面兩行 每貼上一行回車確認 conda config add channels conda config set ...
Ubuntu下vim gcc gdb安裝及使用
在ubuntu下安裝gcc和其他一些linux系統有點不一樣。一 安裝 vim 開啟命令列執行sudo apt get install vim,並按提示輸入管理員密碼。gcc gdb 輸入命令列 執行 sudo apt get install build essential build essent...