使用Anaconda管理環境


 

  Anaconda指的是一個開源的python發行版本,其包含了conda、Python等180多個科學包及其依賴項。

  Anaconda是一個開源的包、環境管理器,可以用於在同一個機器上安裝不同版本的軟件包及其依賴,並能夠在不同的環境之間切換。

一、conda介紹

  conda 是開源包(packages)虛擬環境(environment)的管理系統。

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

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

二、conda的環境管理

  conda的環境管理功能允許用戶同時安裝若干個不同版本的python,並能自由切換。

1、安裝一個新環境

  比如要安裝一個python 3.4環境,需要做如下操作:

# 創建一個名為python34的環境,指定Python版本是3.4(不用管是3.4.x,conda會為我們自動尋找3.4.x中的最新版本)
conda create --name python34 python=3.4

# 安裝好后,使用activate激活某個環境
activate python34 # for Windows
source activate python34 # for Linux & Mac
# 激活后,會發現terminal輸入的地方多了python34的字樣,實際上,此時系統做的事情就是把默認2.7環境從PATH中去除,再把3.4對應的命令加入PATH

# 此時,再次輸入
python --version
# 可以得到`Python 3.4.5 :: Anaconda 4.1.1 (64-bit)`,即系統已經切換到了3.4的環境

# 如果想返回默認的python 2.7環境,運行
deactivate python34 # for Windows
source deactivate python34 # for Linux & Mac

# 刪除一個已有的環境
conda remove --name python34 --all

 

2、查看已安裝的環境

  用戶安裝的不同python環境都會被放在目錄~/anaconda/envs 目錄下:

$ conda info -e
# conda environments:
#
base                  *  /Users/hqs/anaconda3     # 當前被激活的環境會顯示一個星號或括號
python27                 /Users/hqs/anaconda3/envs/python27
python37                 /Users/hqs/anaconda3/envs/python37

二、Conda包管理

1、查看操作

# 查看當前環境下已安裝的包
$ conda list
# packages in environment at /Users/hqs/anaconda3:
#
# Name                           Version                   Build  Channel
_ipyw_jlab_nb_ext_conf    0.1.0                    py36_0  
alabaster                          0.7.12                   py36_0 
...                                    ...                          ...
zope.interface                   4.6.0            py36h1de35cc_0  
zstd                                 1.3.3                h2a6be3a_0 

# 查看某個指定環境的已安裝包
$ conda list -n python27
# packages in environment at /Users/hqs/anaconda3/envs/python27:
#
# Name                    Version                   Build  Channel
ca-certificates           2018.03.07                    0  
certifi                   2018.10.15               py27_0  
libcxx                    4.0.1                hcfea43d_1  
libcxxabi                 4.0.1                hcfea43d_1  
libedit                   3.1.20170329         hb402a30_2  
libffi                    3.2.1                h475c297_4  
ncurses                   6.1                  h0a44026_0

# 查看package信息
$ conda search numpy
Loading channels: done
# Name                  Version           Build  Channel             
numpy                     1.5.1          py26_0  anaconda/pkgs/free  
numpy                     1.5.1          py26_0  pkgs/free           
numpy                     1.5.1          py26_4  anaconda/pkgs/free 
...                            ...              ...

 

2、包管理操作

  Anaconda管理python包。

# 安裝package
conda install pandas

# 使用參數安裝package
conda install -n python37 numpy
    # 使用-n指定要按照的環境名稱
    # 不使用-n則按照在當前活躍環境
    # -c指定通過某個channel安裝

# 更新package
conda update pandas
conda update -n python37 numpy

# 刪除package
conda remove -n python37 numpy 

3、conda管理

  conda將conda、python都視為package,因此也可以使用conda來管理conda和python的版本。

# 更新conda,保持conda最新
$ conda update conda

# 更新anaconda
$ conda update anaconda

# 更新python
$ conda update python
# 當前環境如果是python 3.7,conda會將Python升級為3.7.x系列當前最新版本

 


免責聲明!

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



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