Python - 安裝並配置Anaconda環境


1- 簡介

Anaconda是一個用於科學計算的Python發行版,適用於數據分析的Python工具,也可以用在大數據和人工智能領域。
  • 支持 Linux, Mac, Windows系統;
  • 包含了Python和相關的配套工具,包括許多非常有用的第三方庫;
  • 利用Conda來管理包和運行環境,可以很方便地解決多版本python並存、切換以及各種第三方包安裝問題;

Conda

用來管理包(packages)、依賴與環境(environment)的工具(可執行命令);

Anaconda

Python的一種發行版,是一個打包的集合(預裝好了conda、某個版本的python、眾多packages、科學計算工具等),占用空間較大;

Miniconda

  • 只包含最基本的內容(python與conda,以及相關的必須依賴項)的命令行工具,適合對於空間要求嚴格的用戶;

Conda與Anaconda的聯系與區別

Conda可以理解為一個工具,也是一個可執行命令,其核心功能是包管理與環境管理。包管理與pip的使用類似,環境管理則允許用戶方便地安裝不同版本的python並可以快速切換。
Anaconda則是一個打包的集合,里面預裝好了conda、某個版本的python、眾多packages、科學計算工具等等,所以也稱為Python的一種發行版。

2- 安裝

注意:如無特別說明,本文內容僅適用於windows系統;
 
官方下載:  

 

清華大學anaconda鏡像: https://mirrors.tuna.tsinghua.edu.cn/anaconda/
下載后根據提示進行安裝,建議安裝在指定目錄,不要選擇默認安裝路徑,以便節約系統盤空間和明確相關路徑(例如,虛擬環境的默認路徑等)。
將安裝如下應用:
  • Anaconda Navigtor :用於管理工具包和環境的圖形用戶界面,管理命令也可以在 Navigator 中手工實現。
  • Anaconda Prompt :Anaconda的命令行,通過conda命令可以控制和配置Python運行環境。
  • Jupyter notebook :基於web的交互式計算環境,可以編輯易於閱讀的文檔和展示數據分析的過程。
  • Spyder:使用Python語言、跨平台的、科學運算集成開發環境。
  • Reset Spyder Settings:恢復Spyder的默認設置。
安裝Anaconda完成后,Path環境變量將指向Anaconda自帶的Python,其內置的第三方模塊安裝在自己的路徑下,不影響系統已安裝的Python目錄;

2.1 運行應用

Anaconda Navigtor:可能啟動較慢
 
Anaconda Prompt
 

Jupyter notebook

Spyder

JupyterLab
將在默認瀏覽器(建議將默認瀏覽器設置為Chrome)打開一個默認頁面“http://localhost:8888/lab”,可以在此頁面輸入並執行Python代碼。

  • JupyterLab is the next-generation web-based user interface for Project Jupyter.
  • 文檔:https://jupyterlab.readthedocs.io/
  • JupyterLab被認為是 Jupyter Notebooks 的進一步發展,JupyterLab 的開發者的長期目標是最終替代 Jupyter Notebooks。
  • 支持更加靈活和更加強大的項目操作方式,和Jupyter Notebooks一致的組件和環境,但具有生產力更高的體驗。
  • 可以在一個窗口中放置筆記本、終端、文本文件和輸出結果工作區,只需拖放你需要的單元即可。
  • 可以編輯 Markdown、CSV 和 JSON 等常用文件格式,並實時預覽修改所造成的影響。
  • 可以使用相關的擴展來添加新功能,或者完全改變界面的運行方式。

Qt Console
一個可執行IPython的仿終端圖形界面程序,可直接顯示代碼生成的圖形,實現多行代碼輸入執行,以及內置許多有用的功能和函數。
Glueviz
Python庫,用於探索相關數據集內部和之間的關系,創建統計圖形等。
Orange3
交互式數據可視化的工具,通過巧妙的數據可視化執行簡單的數據分析。
VS Code
Visual Studio Code是一個輕量級但功能強大的源代碼編輯器,內置了對JavaScript,TypeScript和Node.js的支持,並為其他語言和運行時提供了豐富的擴展生態系統。

2.2 添加conda環境變量

避免找不到conda 命令的錯誤提示,需要添加conda環境變量;
例如:“D:\DownLoadFiles\anaconda3\Scripts\”

2.3 幫助信息

  • 命令行下執行"conda -h"或“conda --help”可以獲得幫助信息;
  • 命令行下執行"conda <argument> -h"或“conda <argument> --help”可以獲得具體參數的幫助信息;

2.4 添加Conda代理和國內鏡像

$ conda -h
usage: conda [-h] [-V] command ...

conda is a tool for managing and deploying applications, environments and packages.

Options:

positional arguments:
  command
    clean        Remove unused packages and caches.
    config       Modify configuration values in .condarc. This is modeled
                 after the git config command. Writes to the user .condarc
                 file (C:\Users\guowli\.condarc) by default.

 

根據“conda -h”的提示信息,修改配置文件(如果沒有,可以創建)
這里為“C:\Users\guowli\.condarc”
 
設置代理
$ cat /C/Users/guowli/.condarc
proxy_servers:
    http: http://10.144.1.10:8080
    https: http://10.144.1.10:8080

 

添加國內鏡像源(國內清華大學鏡像)
可以在命令行下執行如下命令(配置改動將更新到配置文件)
conda config --add channels 'https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/'
conda config --add channels 'https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/'
conda config --set show_channel_urls yes

conda源操作的基本命令

conda config --show                查看當前所有配置
conda config --show-sources        查看當前使用源
conda config --remove channels     刪除指定源
conda config --add channels        加指定源

或者直接修改修改配置文件

$ cat /C/Users/guowli/.condarc
channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
  - defaults
show_channel_urls: True
allow_other_channels: True

 

2.5 設置Conda環境和緩存的路徑

默認情況下,Conda創建的新環境以及過往安裝的模塊緩存都存儲在用戶目錄。
默認信息不會在Conda(user-specific)配置文件“$HOME/.condarc”中體現,但可通過"conda info"查看,包括默認環境路徑、默認緩存路徑、Conda源設置等。
添加或修改“$HOME/.condarc”中的“env_dirs”和“pkgs_dirs”配置項,可以設置conda環境和緩存(envs directories 和 package cache)的默認路徑。
按順序第一個路徑作為默認存儲路徑,搜索環境和緩存時按先后順序在各目錄中查找。

例如:在“$HOME/.condarc”中添加如下路徑

envs_dirs:
  - D:\DownLoadFiles\anaconda3\envs  # 按順序第一個路徑作為默認存儲路徑,搜索環境和緩存時按先后順序在各目錄中查找
  - C:\Users\guowli\AppData\Local\conda\conda\envs
  - C:\Users\guowli\.conda\envs                         
pkgs_dirs:
  - D:\DownLoadFiles\anaconda3\pkgs
  - C:\Users\guowli\AppData\Local\conda\conda\pkgs

也可以使用conda命令指定存放路徑:

conda config --add envs_dirs <環境位置絕對路徑>  # 添加環境位置
conda config --add pkgs_dirs <包位置絕對路徑>  # 添加包位置

 

3- 管理Python包

3.1 升級所有工具包

安裝完成后,可以對所有工具包進行升級,在命令行執行“conda upgrade --all”,詢問是否安裝升級版本時,輸入y。

3.2 常用命令

conda install <package_name>         安裝包
conda install numpy scipy pandas     同時安裝多個包
conda install numpy=1.10             安裝包的指定版本
conda install anaconda               在當前環境安裝anaconda集合包
 
conda remove <package_name>   移除包
conda update <package_name>   升級包
 
conda list                    查看當前環境已安裝的包信息
conda search <package_name>   查詢包信息
conda search <search_term>    模糊查詢包信息
 
conda install --name <env_name> <package_name>   在指定環境安裝的包信息
conda remove  --name <env_name> <package_name>   移除指定環境的包
conda update  --name <env_name> <package_name>   升級指定環境的包
conda list --name <env_name>                     查看指定環境的已安裝的包信息
 
conda update conda      更新conda
conda update anaconda   更新anaconda
conda update python     更新Python

 

3.3 通過pip來管理包

注意:conda和pip都是對當前環境進行安裝、升級和卸載包的操作。

1. 設置允許pip訪問conda包管理,執行命令“conda config --set use_pip True”;
$ conda config --set use_pip True

$ cat /c/Users/guowli/.condarc
use_pip: true
2. 激活其中的一個運行環境
3. 在激活的運行環境中,執行pip命令來管理包,可以通過“--proxy”參數設置代理地址;
 

4- 管理Python環境

如果安裝了 Python3 版本的 Anaconda 后,默認的 root 環境是 Python3;

4.1 常用命令

conda create --name <env_name>  <list of packages>    創建新環境 
conda create --name testpy2 python=2.7 pandas         創建名為testpy2的運行環境,並安裝pandas包及其依賴包
conda create --name testpy36 python=3.6 anaconda      創建名為testpy36的運行環境,並安裝anaconda集合包(conda默認環境)

conda env remove --name <env_name>    刪除環境
conda env list                    顯示所有的環境

conda info                        顯示當前安裝的conda信息
conda info --envs                 顯示所有運行環境

source activate <env_name>    激活(進入)環境
source deactivate             去激活(退出)當前環境

 

4.2 分享運行環境

為了保證代碼可以正確運行,分享代碼的同時,也需要將運行環境分享;
通過conda可將當前環境下的 package 信息存入YAML 文件, 當執行他人的代碼時,可使用此YAML文件創建同樣的運行環境;
conda env export > BackupEnv.yaml    將當前運行環境的package信息導出到名為BackupEnv的YAML文件
conda env create --force BackupEnv.yaml   使用YAML文件創建運行環境

 

4.3 完整示例

創建運行環境---》查看運行環境---》進入運行環境---》退出運行環境---》刪除運行環境
$ py --version   # 當前默認python版本
Python 3.7.1


$ conda create --name testpy2 python=2.7 pandas  # 創建名為testpy2的運行環境,並安裝pandas包及其依賴包
Solving environment: done

## Package Plan ##

  environment location: D:\DownLoadFiles\anaconda3\envs\testpy2    # 創建的運行環境的所在目錄

  added / updated specs:  # conda僅安裝pandas和python2.7相關的必須項(pandas的依賴項,python2.7, pip等)
    - pandas
    - python=2.7


The following packages will be downloaded:    # 將要下載當前沒有的安裝包

    package                    |            build
    ---------------------------|-----------------
    vc-9                       |       h7299396_1           3 KB
    python-dateutil-2.7.5      |           py27_0         275 KB
    pandas-0.23.4              |   py27h39f3610_0         8.8 MB
    pytz-2018.7                |           py27_0         250 KB
    certifi-2018.10.15         |           py27_0         139 KB
    setuptools-40.5.0          |           py27_0         653 KB
    numpy-base-1.15.4          |   py27h2753ae9_0         3.8 MB
    pip-18.1                   |           py27_0         1.8 MB
    vs2008_runtime-9.00.30729.1|       hfaea7d5_1        1017 KB
    wincertstore-0.2           |   py27hf04cefb_0          13 KB
    python-2.7.15              |       h2880e7c_3        20.3 MB
    six-1.11.0                 |           py27_1          21 KB
    numpy-1.15.4               |   py27hbe4291b_0          36 KB
    mkl_fft-1.0.6              |   py27hac4a418_0         120 KB
    wheel-0.32.2               |           py27_0          52 KB
    ------------------------------------------------------------
                                           Total:        37.1 MB

The following NEW packages will be INSTALLED:    # 將要安裝的包

    blas:            1.0-mkl
    certifi:         2018.10.15-py27_0
    icc_rt:          2017.0.4-h97af966_0
    intel-openmp:    2019.0-118
    mkl:             2019.0-118
    mkl_fft:         1.0.6-py27hac4a418_0
    numpy:           1.15.4-py27hbe4291b_0
    numpy-base:      1.15.4-py27h2753ae9_0
    pandas:          0.23.4-py27h39f3610_0
    pip:             18.1-py27_0
    python:          2.7.15-h2880e7c_3
    python-dateutil: 2.7.5-py27_0
    pytz:            2018.7-py27_0
    setuptools:      40.5.0-py27_0
    six:             1.11.0-py27_1
    vc:              9-h7299396_1
    vs2008_runtime:  9.00.30729.1-hfaea7d5_1
    wheel:           0.32.2-py27_0
    wincertstore:    0.2-py27hf04cefb_0

Proceed ([y]/n)? y


Downloading and Extracting Packages
vc-9                 | 3 KB      | ######################################################################## | 100%
python-dateutil-2.7. | 275 KB    | ######################################################################## | 100%
pandas-0.23.4        | 8.8 MB    | ######################################################################## | 100%
pytz-2018.7          | 250 KB    | ######################################################################## | 100%
certifi-2018.10.15   | 139 KB    | ######################################################################## | 100%
setuptools-40.5.0    | 653 KB    | ######################################################################## | 100%
numpy-base-1.15.4    | 3.8 MB    | ######################################################################## | 100%
pip-18.1             | 1.8 MB    | ######################################################################## | 100%
vs2008_runtime-9.00. | 1017 KB   | ######################################################################## | 100%
wincertstore-0.2     | 13 KB     | ######################################################################## | 100%
python-2.7.15        | 20.3 MB   | ######################################################################## | 100%
six-1.11.0           | 21 KB     | ######################################################################## | 100%
numpy-1.15.4         | 36 KB     | ######################################################################## | 100%
mkl_fft-1.0.6        | 120 KB    | ######################################################################## | 100%
wheel-0.32.2         | 52 KB     | ######################################################################## | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use:
# > activate testpy2
#
# To deactivate an active environment, use:
# > deactivate
#
# * for power-users using bash, you must source
#


$ conda env list    # 顯示所有運行環境
# conda environments:
#
base                  *  D:\DownLoadFiles\anaconda3    # 星號表示是當前運行環境
testpy2                  D:\DownLoadFiles\anaconda3\envs\testpy2


$ source activate testpy2    # 進入testpy2運行環境
(testpy2)


$ conda env list
# conda environments:
#
base                     D:\DownLoadFiles\anaconda3
testpy2               *  D:\DownLoadFiles\anaconda3\envs\testpy2    # 星號表示是當前運行環境

(testpy2)


$ py --version
Python 3.7.1
(testpy2)    # 括號中顯示當前的運行環境


$ conda info  # 顯示conda信息

     active environment : testpy2
    active env location : D:\DownLoadFiles\anaconda3\envs\testpy2
            shell level : 1
       user config file : C:\Users\guowli\.condarc
 populated config files : C:\Users\guowli\.condarc
          conda version : 4.5.11
    conda-build version : 3.16.2
         python version : 3.7.1.final.0
       base environment : D:\DownLoadFiles\anaconda3  (writable)
           channel URLs : 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/pro/win-64
                          https://repo.anaconda.com/pkgs/pro/noarch
                          https://repo.anaconda.com/pkgs/msys2/win-64
                          https://repo.anaconda.com/pkgs/msys2/noarch
          package cache : D:\DownLoadFiles\anaconda3\pkgs
                          C:\Users\guowli\AppData\Local\conda\conda\pkgs
       envs directories : D:\DownLoadFiles\anaconda3\envs
                          C:\Users\guowli\AppData\Local\conda\conda\envs
                          C:\Users\guowli\.conda\envs
               platform : win-64
             user-agent : conda/4.5.11 requests/2.20.0 CPython/3.7.1 Windows/7 Windows/6.1.7601
          administrator : False
             netrc file : None
           offline mode : False

(testpy2)


$ source deactivate    # 退出當前運行環境


$ conda env list
# conda environments:
#
base                  *  D:\DownLoadFiles\anaconda3    # 星號表示是當前運行環境
testpy2                  D:\DownLoadFiles\anaconda3\envs\testpy2


$ conda env remove --name testpy2    # 刪除運行環境

Remove all packages in environment D:\DownLoadFiles\anaconda3\envs\testpy2:


## Package Plan ##

  environment location: D:\DownLoadFiles\anaconda3\envs\testpy2


The following packages will be REMOVED:

    blas:            1.0-mkl
    certifi:         2018.10.15-py27_0
    icc_rt:          2017.0.4-h97af966_0
    intel-openmp:    2019.0-118
    mkl:             2019.0-118
    mkl_fft:         1.0.6-py27hac4a418_0
    numpy:           1.15.4-py27hbe4291b_0
    numpy-base:      1.15.4-py27h2753ae9_0
    pandas:          0.23.4-py27h39f3610_0
    pip:             18.1-py27_0
    python:          2.7.15-h2880e7c_3
    python-dateutil: 2.7.5-py27_0
    pytz:            2018.7-py27_0
    setuptools:      40.5.0-py27_0
    six:             1.11.0-py27_1
    vc:              9-h7299396_1
    vs2008_runtime:  9.00.30729.1-hfaea7d5_1
    wheel:           0.32.2-py27_0
    wincertstore:    0.2-py27hf04cefb_0

Proceed ([y]/n)? y


$ conda env list
# conda environments:
#
base                  *  D:\DownLoadFiles\anaconda3


$

 

5- 在PyCharm中使用Anaconda創建的環境

5.1 查看Conda環境信息

在Anaconda Prompt中通過“  conda env list”查看所有環境信息,確認環境所在目錄;
注意:通過Conda創建的虛擬環境默認放置envs目錄中,例如:“D:\DownLoadFiles\anaconda3\envs\mlcc”
 

5.2 更改PyCharm的編譯器選項 

打開Pycharm,然后依次點擊File---》Settings---》Project:xxxxx---》Project Interperter---》“齒輪”按鈕---》“Add Local...”

在出現頁面中,添加Conda環境信息並保存

此時,依次點擊File---》Settings---》Project:xxxxx---》Project Interperter---》“齒輪”按鈕---》“Show All...”

依次點擊File---》Settings---》Project:xxxxx---》Project Interperter,選擇相應的環境。

 

6- 參考信息

 

7- 問題處理

7.1 問題1:告警信息“WARNING: The conda.compat module is deprecated and will be removed in a future release.”

問題現象:
安裝Anaconda3后,在Anaconda Prompt執行conda命令, 例如“conda env list”,提示告警信息“WARNING: The conda.compat module is deprecated and will be removed in a future release.”

問題原因:
問題處理方法:
升級conda版本。
(base) C:\Users\guowli>conda update conda
WARNING: The conda.compat module is deprecated and will be removed in a future release.
Collecting package metadata: done
Solving environment: done

## Package Plan ##

  environment location: C:\Office-Tools\Anaconda3

  added / updated specs:
    - conda


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    conda-4.6.14               |           py37_0         2.1 MB  defaults
    ------------------------------------------------------------
                                           Total:         2.1 MB

The following packages will be UPDATED:

  conda                                       4.6.11-py37_0 --> 4.6.14-py37_0


Proceed ([y]/n)? y


Downloading and Extracting Packages
conda-4.6.14         | 2.1 MB    | ############################################################################ | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done

(base) C:\Users\guowli>ET _sysp=%~dpA
'ET' is not recognized as an internal or external command,
operable program or batch file.

(base) C:\Users\guowli>IF NOT EXIST "!_sysp!\Scripts\conda.exe"
Collecting package metadata: done
Solving environment: done

# All requested packages already installed.


(base) C:\Users\guowli>conda --version
conda 4.6.14

(base) C:\Users\guowli>conda env list
# conda environments:
#
base                  *  C:\Office-Tools\Anaconda3


(base) C:\Users\guowli>

 

 

 


免責聲明!

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



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