Anaconda 使用和 Visual Studio Code,PyCharm 對接全解析

Cris就是我發表於2019-01-13

關於 Anaconda

關於 Anaconda 的安裝和介紹,可以參考我的上一篇關於 Jupiter Notebook 的筆記,這裡不再贅述,官網地址

引用維基百科

Anaconda 是一種Python語言的免費增值開源發行版,用於進行大規模資料處理、預測分析,和科學計算,致力於簡化包的管理和部署。Anaconda使用軟體包管理系統Conda進行包管理。

簡單來說,Anaconda 就是專門用於管理 Python 包環境以及部署的工具,同時自帶了很多關於資料處理的工具包,例如:Pandas,NumPy 等等,並且還提供了一個網頁版本的 Jupiter Notebook 編輯器來方便的編寫Python 資料處理程式碼,類似於 pip3 這種 Python 自帶的包下載和管理模組(Anaconda 中是 conda 模組),但是要強大很多。可以簡單的理解為一個裝滿了各種 Python 第三方工具包的倉庫,和我們本地的 Maven 有點類似

① 安裝 Anaconda

當我們裝好 Anaconda 之後,輸入以下命令表示 Anaconda 安裝成功

O_O[cris@cris:~]$ conda -V
conda 4.5.11
^_^[cris@cris:~]$ 
複製程式碼

這個版本的 Anaconda 自帶的Python 直譯器是 3.7 版本,預設 Base 虛擬環境,並且自帶了一系列包可以使用

^_^[cris@cris:~]$ conda list
複製程式碼

檢視當前的 Base 環境有哪些包

Anaconda 使用和 Visual Studio Code,PyCharm 對接全解析

② 什麼是 Base 虛擬環境?

就是當前 Anaconda 預設自帶的一個倉庫(可以這麼理解),在這個倉庫中有 Anaconda 自帶的很多Python 第三方包,包括Python 直譯器(3.7 版本)

實際開發中,每個 Python 專案依賴的包都不同,Python 直譯器版本也可能不同;每個Python 專案可能是你一人開發,也可能是多人開發;為了保證每個 Python 專案的環境(Python 直譯器和專案依賴包)獨立,互不干預,以及同一個Python 專案的所有人開發環境一致,Anaconda 可以為每一個專案單獨配置Python 的開發和執行環境,也就是 Anaconda 中的虛擬環境(可以類比為倉庫)

③ 建立 Anaconda 虛擬環境

使用 conda create -n your_env_name python=X.X(2.7、3.6等),anaconda 命令建立python版本為X.X、名字為your_env_name的虛擬環境。your_env_name檔案可以在Anaconda安裝目錄envs檔案下找到。 指定python版本為2.7,注意至少需要指定python版本或者要安裝的包, 在不指定python版本時,自動安裝最新python版本。

^_^[cris@cris:~]$ conda create -n test python=3.6
複製程式碼

然後檢視當前 Anaconda 的所有虛擬環境

Anaconda 使用和 Visual Studio Code,PyCharm 對接全解析

可以發現 test 虛擬環境建立好了,當前預設是 Anaconda 的Base 環境,怎麼切換到 test 環境呢?

④ 切換環境

(base) O_O[cris@cris:~]$ conda activate test
(test) ^_^[cris@cris:~]$ 
複製程式碼

切換後,我們進入 Python 的Terminal

Anaconda 使用和 Visual Studio Code,PyCharm 對接全解析

可以發現Python 版本已經變為了 3.6

退出終端,我們再使用 conda list 命令檢視當前 Test 環境下的包

Anaconda 使用和 Visual Studio Code,PyCharm 對接全解析

可以發現和 base 環境比,少了很多很多包

⑤ 退出和刪除環境

退出當前環境回到預設的 Base 環境非常簡單

Anaconda 使用和 Visual Studio Code,PyCharm 對接全解析

刪除環境也很簡單

conda remove -n env_name –all 即可,這裡 Cris 就不測試了

⑥ 環境安裝包管理

  • 安裝指定環境的包(預設當前環境,一般當前環境都是設定為 base)
conda install -n <env_name> <package_name>
# -n 或者 --name 引數就是用來指定環境的
複製程式碼
  • 當前環境安裝包
conda install <package_name>
複製程式碼
  • 刪除指定環境的包
conda remove -n <env_name> <package_name>
複製程式碼
  • 刪除當前環境的包
conda remove <package_name>
複製程式碼
  • 更新當前環境的包
conda update <package_name>
複製程式碼
  • 更新當前環境所有包
(base) O_O[cris@cris:~]$ conda update --all
複製程式碼
  • 更新當前環境多個指定包,則包名以空格隔開,向後排列。如:conda update pandas numpy matplotlib即更新pandas、numpy、matplotlib包。

  • 更新conda,保持conda最新

    conda update conda
    複製程式碼
  • 更新anaconda

    conda update anaconda 
    複製程式碼
  • 查詢包

    $ conda search package_name
    # 還可以使用引數進行精確查詢
    $ conda search --full-name tensflow
    複製程式碼

⑦ 環境複製和匯出

conda create --name new_env_name --clone copied_env_name
複製程式碼

複製的新環境和原環境配置一致

匯出當前環境的配置資訊

(test) ^_^[cris@cris:~]$ conda env export > environment.yaml
複製程式碼

發現當前目錄下多了一個配置檔案

Anaconda 使用和 Visual Studio Code,PyCharm 對接全解析

檢視這個檔案,就是我們當前 test 環境的所有配置資訊

name: test
channels:
  - defaults
dependencies:
  - ca-certificates=2018.03.07=0
  - certifi=2018.11.29=py36_0
  - libedit=3.1.20170329=h6b74fdf_2
  - libffi=3.2.1=hd88cf55_4
  - libgcc-ng=8.2.0=hdf63c60_1
  - libstdcxx-ng=8.2.0=hdf63c60_1
  - ncurses=6.1=he6710b0_1
  - openssl=1.1.1a=h7b6447c_0
  - pip=18.1=py36_0
  - python=3.6.8=h0371630_0
  - readline=7.0=h7b6447c_5
  - setuptools=40.6.3=py36_0
  - sqlite=3.26.0=h7b6447c_0
  - tk=8.6.8=hbc83047_0
  - wheel=0.32.3=py36_0
  - xz=5.2.4=h14c3975_4
  - zlib=1.2.11=h7b6447c_3
prefix: /home/cris/module/anaconda3/envs/test
複製程式碼

這樣子就可以在別人電腦上快速搭建統一的環境

# // 用配置檔案建立新的虛擬環境
$ conda env create -f environment.yaml
複製程式碼

參考部落格

參考文章

⑧ Anaconda 和 Visual Studio Code 的對接

開啟 Visual Studio Code,可以隨意調整 Python 的執行環境

Anaconda 使用和 Visual Studio Code,PyCharm 對接全解析

⑨ Anaconda 和 PyCharm 對接

稍微麻煩一點,先要新建一個工程

Anaconda 使用和 Visual Studio Code,PyCharm 對接全解析

然後選擇 Anaconda 環境

Anaconda 使用和 Visual Studio Code,PyCharm 對接全解析

Anaconda 使用和 Visual Studio Code,PyCharm 對接全解析

專案建立好後,開啟project 選項

Anaconda 使用和 Visual Studio Code,PyCharm 對接全解析

注意:PyCharm 引用 Anaconda 環境時,專案建立完畢,右下角訊息欄可能會報出 Inotify Watches Limit 提示,官方的解決方案連結,照著做即可

ps:關於 PyCharm 的免費啟用,參考

⑩ 讓 Anaconda 飛起來

Anaconda 預設採用的國外映象網站,這裡強力推薦將映象源換成國內清華大學的映象

修改文章在此,強力推薦,讓你的 Anaconda 跑的比博爾特還快~

注意的是,修改路徑均在根目錄,並且最新版本的 Anaconda 使用 conda info 檢視當前配置資訊如下

^_^[cris@cris:~]$ conda info

     active environment : base
    active env location : /home/cris/module/anaconda3
            shell level : 1
       user config file : /home/cris/.condarc
 populated config files : /home/cris/.condarc
          conda version : 4.5.11
    conda-build version : 3.15.1
         python version : 3.7.0.final.0
       base environment : /home/cris/module/anaconda3  (writable)
           channel URLs : https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64
                          https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/noarch
          package cache : /home/cris/module/anaconda3/pkgs
                          /home/cris/.conda/pkgs
       envs directories : /home/cris/module/anaconda3/envs
                          /home/cris/.conda/envs
               platform : linux-64
             user-agent : conda/4.5.11 requests/2.19.1 CPython/3.7.0 Linux/4.15.0-29deepin-generic deepin/15.8 glibc/2.27
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False

複製程式碼

相關文章