Anaconda 入門詳解


Anaconda

Anaconda簡介

Anaconda是一個免費開源的Python和R語言的發行版本,用於計算科學(數據科學、機器學習、大數據處理和預測分析),Anaconda致力於簡化包管理和部署。Anaconda的包使用軟件包管理系統Conda進行管理。超過1200萬人使用Anaconda發行版本,並且Anaconda擁有超過1400個適用於Windows、Linux和MacOS的數據科學軟件包。

Anaconda擁有超過1400個軟件包其中包含Conda和虛擬環境管理,他們都被包含在Anaconda Navigator中,因此無需去了解獨立安裝每個庫。支持 Linux, Mac, Windows系統,提供了包管理與環境管理的功能,可以很方便地解決多版本python並存、切換以及各種第三方包安裝問題。Anaconda利用工具/命令conda來進行package和environment的管理,並且已經包含了Python和相關的配套工具。可以使用已經包含在Anaconda中的命令conda install或者pip install從Anaconda倉庫中安裝開源軟件包。Pip提供了Conda大部分功能,並且大多數情況下兩個可以同時使用。可以使用conda build命令構建自定義包,然后通過上傳到Anaconda Cloud、PyPI或其他倉庫來分享給其他人。

Anaconda2默認包含Python 2.7,Anaconda3默認包含Python 3.7,但是你可以創建虛擬環境來使用任意版本的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 附帶了一大批常用數據科學包,它附帶了 conda、Python 和 150 多個科學包及其依賴項。因此你可以立即開始處理數據。

  • 管理包

Anaconda 是在 conda(一個包管理器和環境管理器)上發展出來的。可以使用 conda 來安裝、更新 、卸載工具包 ,並且它更關注於數據科學相關的工具包。在安裝 anaconda 時就預先集成了像 Numpy、Scipy、 pandas、Scikit-learn 這些在數據分析中常用的包。另外值得一提的是,conda 並不僅僅管理Python的工具包,它也能安裝非python的包。比如在新版的 Anaconda 中就可以安裝R語言的集成開發環境 Rstudio。

  • 虛擬環境管理

在conda中可以建立多個虛擬環境,用於隔離不同項目所需的不同版本的工具包,以防止版本上的沖突。對糾結於 Python 版本的同學們,我們也可以建立 Python2 和 Python3 兩個環境,來分別運行不同版本的 Python 代碼。

Anaconda還包含一些功能強大的工具

  • Anaconda Navigtor :用於管理工具包和環境的圖形用戶界面,后續涉及的眾多管理命令也可以在 Navigator 中手工實現。

  • Jupyter notebook :基於web的交互式計算環境,可以編輯易於人們閱讀的文檔,用於展示數據分析的過程。

  • qtconsole :一個可執行 IPython 的仿終端圖形界面程序,相比 Python Shell 界面,qtconsole 可以直接顯示代碼生成的圖形,實現多行代碼輸入執行,以及內置許多有用的功能和函數。

  • spyder :一個使用Python語言、跨平台的、科學運算集成開發環境。

Anaconda 安裝

  • 下載

官網點擊Download進入下載頁面,選擇對應的平台和版本下載,我這里是Anaconda3-2019.03-MacOSX-x86_64.pkg這個版本

  • 安裝

下載完成后雙擊下一步下一步知道安裝完成,安裝完成后自動會把anaconda的執行文件的路徑添加到環境變量中無需手動配置,如何需要手動改變需要自行配置。

Anaconda的使用


# 獲取幫助
$ conda --help

# 安裝完成后驗證conda的版本和python的版本等詳細信息

$ conda info

C:\>conda info

     active environment : None
       user config file : C:\Users\Andy\.condarc
 populated config files : C:\Users\Andy\.condarc
          conda version : 4.6.12
    conda-build version : 3.10.5
         python version : 3.6.2.final.0
       base environment : D:\software\devapps\anaconda3-5.2.0  (writable)
           channel URLs : https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/win-64
                          https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/noarch
                          https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/win-64
                          https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/noarch
                          https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/win-64
                          https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/noarch
                          https://repo.anaconda.com/pkgs/main/win-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/free/win-64
                          https://repo.anaconda.com/pkgs/free/noarch
                          https://repo.anaconda.com/pkgs/r/win-64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/msys2/win-64
                          https://repo.anaconda.com/pkgs/msys2/noarch
          package cache : D:\software\devapps\anaconda3-5.2.0\pkgs
                          C:\Users\Andy\.conda\pkgs
                          C:\Users\Andy\AppData\Local\conda\conda\pkgs
       envs directories : D:\software\devapps\anaconda3-5.2.0\envs
                          C:\Users\Andy\.conda\envs
                          C:\Users\Andy\AppData\Local\conda\conda\envs
               platform : win-64
             user-agent : conda/4.6.12 requests/2.21.0 CPython/3.6.2 Windows/10 Windows/10.0.17763
          administrator : False
             netrc file : None
           offline mode : False


C:\>

# 列出我本機的所有環境,第一個是自己創建的,后面的是我自己后續創建的
$ conda info -e

C:\Users\Andy>conda info -e
# conda environments:
#
base                  *  D:\software\devapps\anaconda3-5.2.0
python27                 D:\software\devapps\anaconda3-5.2.0\envs\python27
python36                 D:\software\devapps\anaconda3-5.2.0\envs\python36
python37                 D:\software\devapps\anaconda3-5.2.0\envs\python37


C:\Users\Andy>


包管理

一般來說 conda 倉庫的軟件沒有 PyPI 更新快和全。所以推薦 conda 只用來創建虛擬環境,包的安裝管理仍然使用 pip。

# 列出當前環境下所有安裝的 conda 包。
$ conda list

# 列舉一個指定環境下的所有包
$ conda list -n env_name

# 查詢庫
$ conda search scrapys

# 安裝庫安裝時可以指定版本例如:(scrapy=1.5.0)
$ conda install scrapy

# 為指定環境安裝某個包
$ conda install --name target_env_name package_name

# 更新安裝的庫
$ conda update scrapy

# 更新指定環境某個包
$ conda update -n target_env_name package_name

# 更新所有包
$ conda update --all

# 刪除已經安裝的庫也尅用(conda uninstall)
$ conda remove scrapy

# 刪除指定環境某個包
$ conda remove -n target_env_name package_name

# 刪除沒有用的包
$ conda clean -p

虛擬環境管理


# 創建環境,后面的python=3.6是指定python的版本
$ conda create --name env_name python=3.6

# 創建包含某些包的環境(也可以加上版本信息)
$ conda create --name env_name python=3.7 numpy scrapy

# 激活某個環境
$ activate env_name

# 關閉某個環境
$ conda deactivate

# 復制某個環境
$ conda create --name new_env_name --clone old_env_name

# 刪除某個環境
$ conda remove --name env_name --all

# 生成需要分享環境的yml文件(需要在虛擬環境中執行)
$ conda env export > environment.yml

# 別人在自己本地使用yml文件創建虛擬環境
$ conda env create -f environment.yml


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM