Python包管理、環境管理 及 Anaconda安裝
conda
conda是開源包和虛擬環境的管理系統。conda的設計理念:將幾乎所有的工具和第三方包都當作packages對待,甚至包括python和conda自身。
anaconda
anaconda是用於科學計算的Python發行版,可在Windows、MacOS和Linux下使用,包含了conda、Python等190多個科學包及其依賴項。在安裝 anaconda 時就預先集成了像 Numpy、Scipy、 pandas、Scikit-learn 這些在資料分析中常用的包。
miniconda
miniconda 是一個 anaconda 的輕量級替代,預設只包含了 python 和 conda,但是可以通過 pip 和 conda 來安裝所需要的包。
anaconda安裝
anaconda安裝檔案可以在官網下載。官網提供了兩個安裝版本,Python2和Python3,筆者這裡選擇Python3。官網下載速率慢的化,可以在清華映象網站下載。
miniconda安裝包下載網站。
anaconda安裝完成後,會裝好以下程式:
- Anaconda Navigtor:用於管理工具包和環境的圖形使用者介面,後續涉及的眾多管理命令也可以在 Navigator 中手工實現。
- Jupyter notebook :基於web的互動式計算環境,可以編輯易於人們閱讀的文件,用於展示資料分析的過程。
- qtconsole :一個可執行 IPython 的仿終端圖形介面程式,相比 Python Shell 介面,qtconsole 可以直接顯示程式碼生成的圖形,實現多行程式碼輸入執行,以及內建許多有用的功能和函式。
- spyder :一個使用Python的跨平臺整合開發環境。
Python包管理
安裝package,可同時安裝多個packages
conda install package_name
指定安裝版本,比如安裝 1.1 版本的 numpy
conda install numpy=1.10
指定安裝環境
conda list -n env_name
移除一個package
conda remove package_name
升級一個package
conda update package_name
升級所有packages
conda update --all
檢視所有的 packages:
conda list
模糊查詢:
conda search search_term
指定國內映象:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
執行完上述命令後,會生成~/.condarc(Linux/Mac)或C:UsersUSER_NAME.condarc檔案,記錄著我們對conda的配置,直接手動建立、編輯該檔案是相同的效果。
Python環境管理
建立新環境
conda create -n env_name list of packages
conda create --name python27 python=2.7
進入名為env_name的環境
source activate env_name
退出當前環境
source deactivate
在 Windows 系統中,使用 activate env_name 和 deactivate 來進入和退出某個環境。
刪除名為 env_name 的環境:
conda env remove -n env_name
顯示所有環境:
conda env list
分享執行環境,將當前環境下的 package 資訊存入名為 environment 的 YAML 檔案中。
conda env export > environment.yaml
當執行他人的程式碼時,配置相應的環境。用YAML 檔案來建立一摸一樣的執行環境。
conda env create -f environment.yaml
conda將conda、python等都視為package,因此,完全可以使用conda來管理conda和python的版本,例如
conda update conda
conda update anaconda
# 假設當前環境是python 3.4, conda會將python升級為3.4.x系列的當前最新版本
conda update python