Anaconda3 使用手冊

··參考:Anaconda完全入門指南

在 Python 的編程過程中您可以會遇到如下場景:

  1. 我的電腦上安裝了 Python3 但是剛剛接手的項目是 Python2 的某筐,我該怎么辦?需要重新安裝 Python 嗎冠跷?
  2. 對于深度學習項目南誊,您如何配置不同的環(huán)境以匹配不同的框架(如 Pytorch,MXNet蜜托,TensorFlow)抄囚?
  3. 如何將已經(jīng)配置好的環(huán)境遷移到其他電腦上,而無需重新配置環(huán)境橄务?
  4. 如何直接在 Jupyter Notebook 中切換環(huán)境幔托?

??這么多問題?該怎么辦蜂挪?其實柑司,這些問題迫肖,只要您安裝 Anaconda3 即可迎刃而解锅劝!

關(guān)于軟件的安裝攒驰,按照圖示提示即可。本文主要介紹如何解決上述問題故爵。本文以主要著眼于 Windows10 系統(tǒng)玻粪,其他系統(tǒng)是類似的。

1 Anaconda 基礎(chǔ)

  1. 查看 conda 版本

Windows 用戶請打開 “Anaconda Prompt”诬垂;macOS 和 Linux 用戶請打開 “Terminal”(“終端”)進行操作劲室。

conda --version

終端上將會以 conda 版本號 的形式顯示當前安裝 conda 的版本號,如:conda 4.8.2结窘。

  1. 更新 conda 至最新版本
conda update conda

執(zhí)行命令后很洋,conda 將會對版本進行比較并列出可以升級的版本。同時隧枫,也會告知用戶其他相關(guān)包也會升級到相應(yīng)版本喉磁。

  1. 查看 conda 幫助信息
conda --help # 或者 conda -h
  1. 卸載 conda

① Linux 或 macOS

rm -rf ~/anaconda3

即刪除Anaconda的安裝目錄。根據(jù)安裝的Anaconda版本選擇相應(yīng)的卸載命令官脓。

② Windows

控制面板 → 添加或刪除程序 → 選擇“Python X.X (Anaconda)” → 點擊“刪除程序”

注意:Python X.X:即 Python 的版本协怒,如:Python 3.6。

2 使用命令行進行環(huán)境管理

如果您在安裝 Anaconda 時將其添加到了電腦的環(huán)境變量卑笨,可以在命令行直接輸入 activate 激活環(huán)境孕暇。否則,需要使用完整的路徑激活環(huán)境比如:

C:\Users\xinet\anaconda3\Scripts\activate

該路徑是您的 Anaconda3 所在目錄赤兴,即:

圖1 activate Python base 環(huán)境

運行該命令妖滔,終端便會多一個 base 的提示:

圖2 在終端進入 base 環(huán)境

最好不要在 base 環(huán)境中安裝或者配置一些包之類的,它是 Python 的基礎(chǔ)環(huán)境桶良,為了更好的管理 Python 環(huán)境座舍,需要創(chuàng)建屬于自己的環(huán)境。

2.1 創(chuàng)建新環(huán)境

conda create --name <env_name> <package_names>

也可以簡寫為 conda create -n <env_name> <package_names>艺普。其中 <env_name><package_names> 分別表示創(chuàng)建的環(huán)境名以及環(huán)境中的包名簸州。建議以英文命名,且不加空格歧譬,名稱兩邊不加尖括號 <>岸浑。

  1. 如果要安裝指定的版本號,則只需要在包名后面以 = 和版本號的形式執(zhí)行瑰步。如: conda create --name python2 python=2.7 矢洲,即創(chuàng)建一個名為 “python2” 的環(huán)境,環(huán)境中安裝版本為 2.7 的 python缩焦。
  2. 如果要在新創(chuàng)建的環(huán)境中創(chuàng)建多個包读虏,則直接在 <package_names> 后以空格隔開责静,添加多個包名即可。如: conda create -n python3 python=3.5 numpy pandas盖桥,即創(chuàng)建一個名為 “python3” 的環(huán)境灾螃,環(huán)境中安裝版本為 3.5 的 Python,同時也安裝了 numpy 和 pandas揩徊。

提示:默認情況下腰鬼,新創(chuàng)建的環(huán)境將會被保存在 /Users/<user_name>/anaconda3/env 目錄下,其中塑荒,<user_name> 為當前用戶的用戶名熄赡。

2.2 切換環(huán)境

需要注意本文介紹的激活方法僅僅適用于 conda 4.6 及其以上版本。

conda activate <env_name> # 切換環(huán)境

2.3 列出全部環(huán)境

列出全部環(huán)境可以是 conda env list 或者 conda info -e 或者 conda info --envs齿税。結(jié)果中星號“*”所在行即為當前所在環(huán)境彼硫。macOS系統(tǒng)中默認創(chuàng)建的環(huán)境名為“base”。

圖2 列出全部環(huán)境

2.4 復(fù)制環(huán)境

<copied_env_name> 即為被復(fù)制/克隆環(huán)境名凌箕。<new_env_name> 即為復(fù)制之后新環(huán)境的名稱拧篮。

conda create --name <new_env_name> --clone <copied_env_name>

2.5 刪除環(huán)境

conda remove --name <env_name> --all

其中 <env_name> 為被刪除環(huán)境的名稱。

2.6 導(dǎo)入導(dǎo)出環(huán)境

如果想要導(dǎo)出當前環(huán)境的包信息可以用

conda env export > environment.yaml

將包信息存入 yaml 文件中陌知。當需要重新創(chuàng)建一個相同的虛擬環(huán)境時可以用

conda env create -f environment.yaml

3 使用命令行進行管理包

3.1 查找可供安裝的包版本

  1. 精確查找
conda search --full-name <package_full_name>

--full-name 為精確查找的參數(shù)他托。<package_full_name>是被查找包的全名。

  1. 模糊查找
conda search <text>

其中 <text> 是查找含有此字段的包名仆葡。例如:conda search py 即查找含有 py 字段的包赏参,有哪些版本可供安裝。

3.2 獲取當前環(huán)境中已安裝的包信息

conda list

執(zhí)行上述命令后將在終端顯示當前環(huán)境已安裝包的包名及其版本號沿盅。

3.3 安裝包

  1. 在指定環(huán)境中安裝包
conda install --name <env_name> <package_name>

<env_name> 即將包安裝的指定環(huán)境名把篓。<package_name> 即要安裝的包名。例如:conda install --name python2 pandas 即在名為“python2”的環(huán)境中安裝 pandas 包腰涧。

  1. 在當前環(huán)境中安裝包
conda install <package_name>
  1. 使用 pip 安裝包

?使用場景:當使用 conda install 無法進行安裝時韧掩,可以使用 pip 進行安裝。例如:see 包窖铡。

pip install <package_name>

注意:pip 只是包管理器疗锐,無法對環(huán)境進行管理。因此如果想在指定環(huán)境中使用 pip 進行安裝包,則需要先切換到指定環(huán)境中,再使用 pip 命令安裝包何暇。pip 無法更新 Python磅崭,因為 pip 并不將 python 視為包媒殉。pip 可以安裝一些 conda 無法安裝的包;conda 也可以安裝一些 pip 無法安裝的包盛嘿。因此當使用一種命令無法安裝包時娜饵,可以嘗試用另一種命令关划。

  1. http://Anaconda.org 安裝包

?使用場景:當使用 conda install 無法進行安裝時小染,可以考慮從 http://Anaconda.org 中獲取安裝包的命令,并進行安裝贮折。

3.4 卸載包

  1. 卸載指定環(huán)境中的包
conda remove --name <env_name> <package_name>

<env_name> 即卸載包所在指定環(huán)境的名稱裤翩。<package_name> 即要卸載包的名稱

  1. 卸載當前環(huán)境中的包
conda remove <package_name>

3.5 更新包

  1. 更新所有包
conda update --all

建議:在安裝 Anaconda 之后執(zhí)行上述命令更新 Anaconda 中的所有包至最新版本,便于使用脱货。

  1. 更新指定包
conda update <package_name>

<package_name> 為指定更新的包名岛都。更新多個指定包,則包名以空格隔開振峻,向后排列。如:conda update pandas numpy matplotlib 即更新 pandas择份、numpy扣孟、matplotlib 包。

4 設(shè)置清華鏡像

參考:anaconda | 鏡像站使用幫助 | 清華大學開源軟件鏡像站 ...

為了提高 pip 與 conda 安裝軟件包的速度荣赶,我們需要設(shè)置清華鏡像凤价。對于 pip,不同系統(tǒng)設(shè)置的方法是一樣的拔创,即:

$ pip install --upgrade pip -U # -U == --user
$ pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

而對于 conda利诺,在 Windows10 中這樣設(shè)置:

$ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
$ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
$ conda config  --set show_channel_urls yes

在 Ubuntu18.04 中設(shè)置 conda,需要借助 vscode 修改用戶目錄下的 .condarc剩燥,即 code ~/.condarc慢逾,然后添加如下內(nèi)容:

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

5 在 Jupyter Notebook 中切換環(huán)境

我們知道 Jupyter Notebook 是一個十分強大的工具,需要在 Jupyter Notebook 中切換環(huán)境灭红,則需要配置 ipykernel侣滩,比如,創(chuàng)建一個 TensorFlow 的環(huán)境:

$ conda install ipykernel
$ python -m ipykernel install --user --name tensorflow --display-name "tensorflow"

效果如下:

圖3 在 Jupyter Notebook 中切換環(huán)境

如果沒有達到預(yù)期效果变擒,可以繼續(xù)安裝 jupyter 即可:

$ pip install jupyter

更多精彩見 6 搭建一個友好的可塑性計算機視覺工具集君珠。

討論

在 Windows10 的 PowerShell 不能直接切換 conda 的環(huán)境,您需要在其中輸入:

$ cmd

才可以切換環(huán)境娇斑。具體見下圖:

圖7 在 Windows10 的 PowerShell 切換 Python 環(huán)境

圖7 中不能直接使用 conda 的原因是我的電腦沒有把 conda 添加的電腦的系統(tǒng)環(huán)境變量之中策添,所以需要使用絕對路徑啟動 base 環(huán)境。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末毫缆,一起剝皮案震驚了整個濱河市唯竹,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌悔醋,老刑警劉巖摩窃,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡猾愿,警方通過查閱死者的電腦和手機鹦聪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蒂秘,“玉大人泽本,你說我怎么就攤上這事∫錾” “怎么了规丽?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長撇贺。 經(jīng)常有香客問我赌莺,道長,這世上最難降的妖魔是什么松嘶? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任艘狭,我火速辦了婚禮,結(jié)果婚禮上翠订,老公的妹妹穿的比我還像新娘巢音。我一直安慰自己,他們只是感情好尽超,可當我...
    茶點故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布官撼。 她就那樣靜靜地躺著,像睡著了一般似谁。 火紅的嫁衣襯著肌膚如雪傲绣。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天棘脐,我揣著相機與錄音斜筐,去河邊找鬼。 笑死蛀缝,一個胖子當著我的面吹牛顷链,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播屈梁,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼嗤练,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了在讶?” 一聲冷哼從身側(cè)響起煞抬,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎构哺,沒想到半個月后革答,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體战坤,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年残拐,在試婚紗的時候發(fā)現(xiàn)自己被綠了途茫。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡溪食,死狀恐怖囊卜,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情错沃,我是刑警寧澤栅组,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站枢析,受9級特大地震影響玉掸,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜登疗,卻給世界環(huán)境...
    茶點故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一排截、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧辐益,春花似錦、人聲如沸脱吱。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽箱蝠。三九已至续捂,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間宦搬,已是汗流浹背牙瓢。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留间校,地道東北人矾克。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像憔足,于是被迫代替她去往敵國和親胁附。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,700評論 2 354