搜尋
首頁後端開發Python教學Anaconda的新手使用大全

Anaconda的新手使用大全

Apr 09, 2018 pm 05:37 PM
anaconda大全新手

這次帶給大家Anaconda的新手使用大全,新手使用Anaconda的注意事項有哪些,以下就是實戰案例,一起來看一下。

Python易用,但用好卻不易,其中比較頭痛的就是套件管理和Python不同版本的問題,特別是當你使用Windows的時候。為了解決這些問題,有不少發行版的Python,例如WinPython、Anaconda等,這些發行版將python和許多常用的package打包,方便pythoners直接使用,此外,還有virtualenv、pyenv等工具管理虛擬環境。 (推薦學習教學:Python影片教學

個人嘗試了許多類似的發行版,最後選擇了Anaconda,因為其強大而方便的套件管理與環境管理的功能。該文主要介紹下Anaconda,對Anaconda的理解,並簡要總結下相關的操作。

Anaconda概述

Anaconda是一個用於科學計算的Python發行版,支援Linux, Mac, Windows系統,提供了套件管理與環境管理的功能,可以很方便地解決多版本python並存、切換以及各種第三方套件安裝問題。 Anaconda利用工具/指令conda來進行package和environment的管理,並且已經包含了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的下載頁請參考官網下載,Linux、Mac、Windows皆支援。

安裝時,會發現有兩個不同版本的Anaconda,分別對應Python 2.7和Python 3.5,兩個版本其實除了這點差異外其他都一樣。後面我們會看到,安裝哪個版本並不本質,因為透過環境管理,我們可以很方便地切換運行時的Python版本。 (由於我常用的Python是2.7和3.4,因此傾向於直接安裝Python 2.7對應的Anaconda)

#下載後直接按照說明安裝即可。這裡想提醒一點:盡量依照Anaconda預設的行為安裝-不使用root權限,只有個人安裝,安裝目錄設定在個人主目錄下(Windows就無所謂了)。這樣的好處是,同一台機器上的不同使用者完全可以安裝、設定自己的Anaconda,不會互相影響。

對於Mac、Linux系統,Anaconda安裝好後,其實就是在主目錄下多了個資料夾(~/anaconda)而已,Windows會寫入註冊表。安裝時,安裝程式會把bin目錄加入PATH(Linux/Mac寫入~/.bashrc,Windows加到系統變數PATH),這些操作也完全可以自己完成。以Linux/Mac為例,安裝完成後設定PATH的操作是

# 將anaconda的bin目錄加入PATH,依版本不同,也可能是~/anaconda3/bin
echo ' export PATH="~/anaconda2/bin:$PATH"' >> ~/.bashrc
# 更新bashrc以立即生效
source ~/.bashrc

#配置良好PATH後,可以透過which condaconda --version指令檢查是否正確。假如安裝的是Python 2.7對應的版本,運行python --version或python -V可以得到Python 2.7.12 :: Anaconda 4.1.1 (64-bit),也說明該發行版預設的環境是Python 2.7。

Conda的環境管理

Conda的環境管理功能讓我們可以同時安裝若干不同版本的Python,並且可以自由切換。對於上述安裝過程,假設我們採用的是Python 2.7對應的安裝包,那麼Python 2.7就是預設的環境(預設名稱是root,注意這個root不是超級管理員的意思)。

假設我們需要安裝Python 3.4,此時,我們需要做的操作如下:

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

# 此時,再次輸入
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

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

使用者安裝的不同python環境都會被放在目錄~/anaconda/envs下,可以在指令中執行conda info -e查看已安裝的環境,目前被啟動的環境會顯示有一個星號或括號。

說明:有些使用者可能經常使用python 3.4環境,因此直接把~/anaconda/envs/python34下面的bin或Scripts加入PATH,去除anaconda對應的那個bin目錄。這個辦法,怎麼說呢,也是可以的,但總覺得不是那麼elegant……

如果直接照上面說的這麼改PATH,你會發現conda指令又找不到了(當然找不到啦,因為conda在~/anaconda/bin裡呢),這時候怎麼辦呢?方法有二:1. 明確地給出conda的絕對位址 2. 在python34環境中也安裝conda工具(建議)。

Conda的套件管理

Conda的套件管理就比較好理解了,這部分功能與pip類似。

例如,如果需要安裝scipy:

# 安裝scipy
conda install scipy
# conda會從遠端搜尋scipy的相關資訊和依賴項目,對於python 3.4,conda會同時安裝numpy和mkl(運算加速的函式庫)

# 檢視已經安裝的packages
conda list
# 最新版的conda是從site-packages資料夾中搜尋已經安裝的套件,不依賴pip,因此可以顯示出透過各種方式安裝的套件

conda的一些常用操作如下:

檢視目前環境下已安裝的套件
conda list

# 查看某個指定環境的已安裝套件
conda list -n python34

# 尋找package資訊
conda search numpy

# 安裝package
conda install -n python34 numpy
# 如果不用-n指定環境名稱,則被安裝在目前活躍環境
# 也可以透過-c指定透過某個channel安裝

# 更新package
conda update -n python34 numpy

# 刪除package
conda remove -n python34 numpy

##前面已經提到,conda將conda、python等都視為package,因此,完全可以使用conda來管理conda和python的版本,例如

# 更新conda,保持conda最新

conda update conda

## 更新anaconda

conda update anaconda

# 更新python

conda update python
# 假設目前環境是python 3.4, conda會將python升級為3.4.x系列的當前最新版本

補充:如果創建新的python環境,例如3.4,運行

conda create -n python34 python=3.4之後,conda僅安裝python 3.4相關的必須項,如python, pip等,如果希望該環境像預設環境那樣,安裝anaconda集合包,只需要:

# 在當前環境下安裝anaconda包集合

conda install anaconda

# 結合創建環境的命令,以上操作可以合併為

conda create -n python34 python=3.4 anaconda
# 也可以不用全部安裝,根據需求安裝自己需要的package即可

設定國內鏡像

如果需要安裝很多packages,你會發現conda下載的速度經常很慢,因為Anaconda.org的伺服器在國外。所幸的是,清華TUNA鏡像來源有Anaconda倉庫的鏡像,我們將其加入conda的配置即可:

# 新增Anaconda的TUNA映像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
# TUNA的help中鏡像位址加上引號,需要去掉

# 設定搜尋時顯示頻道位址
conda config --set show_channel_urls yes

執行完上述指令後,會產生~/. condarc(Linux/Mac)或C:\Users\USER_NAME\.condarc文件,記錄我們對conda的配置,直接手動建立、編輯該文件是相同的效果。

Anaconda具有跨平台、套件管理、環境管理的特點,因此很適合快速在新的機器上部署Python環境。總結而言,整套安裝、設定流程如下:

  • 下載Anaconda、安裝

  • 設定PATH(bashrc或環境變數),變更TUNA鏡像來源

  • 建立所需的不用版本的python環境

  • Just Try!




##################### ###cheat-sheet 下載:######Conda cheat sheet###################相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章! ######推薦閱讀:#########python操作excel讀寫資料################python使用unittest測試介面步奏詳解#### ######

以上是Anaconda的新手使用大全的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
Python:遊戲,Guis等Python:遊戲,Guis等Apr 13, 2025 am 12:14 AM

Python在遊戲和GUI開發中表現出色。 1)遊戲開發使用Pygame,提供繪圖、音頻等功能,適合創建2D遊戲。 2)GUI開發可選擇Tkinter或PyQt,Tkinter簡單易用,PyQt功能豐富,適合專業開發。

Python vs.C:申請和用例Python vs.C:申請和用例Apr 12, 2025 am 12:01 AM

Python适合数据科学、Web开发和自动化任务,而C 适用于系统编程、游戏开发和嵌入式系统。Python以简洁和强大的生态系统著称,C 则以高性能和底层控制能力闻名。

2小時的Python計劃:一種現實的方法2小時的Python計劃:一種現實的方法Apr 11, 2025 am 12:04 AM

2小時內可以學會Python的基本編程概念和技能。 1.學習變量和數據類型,2.掌握控制流(條件語句和循環),3.理解函數的定義和使用,4.通過簡單示例和代碼片段快速上手Python編程。

Python:探索其主要應用程序Python:探索其主要應用程序Apr 10, 2025 am 09:41 AM

Python在web開發、數據科學、機器學習、自動化和腳本編寫等領域有廣泛應用。 1)在web開發中,Django和Flask框架簡化了開發過程。 2)數據科學和機器學習領域,NumPy、Pandas、Scikit-learn和TensorFlow庫提供了強大支持。 3)自動化和腳本編寫方面,Python適用於自動化測試和系統管理等任務。

您可以在2小時內學到多少python?您可以在2小時內學到多少python?Apr 09, 2025 pm 04:33 PM

兩小時內可以學到Python的基礎知識。 1.學習變量和數據類型,2.掌握控制結構如if語句和循環,3.了解函數的定義和使用。這些將幫助你開始編寫簡單的Python程序。

如何在10小時內通過項目和問題驅動的方式教計算機小白編程基礎?如何在10小時內通過項目和問題驅動的方式教計算機小白編程基礎?Apr 02, 2025 am 07:18 AM

如何在10小時內教計算機小白編程基礎?如果你只有10個小時來教計算機小白一些編程知識,你會選擇教些什麼�...

如何在使用 Fiddler Everywhere 進行中間人讀取時避免被瀏覽器檢測到?如何在使用 Fiddler Everywhere 進行中間人讀取時避免被瀏覽器檢測到?Apr 02, 2025 am 07:15 AM

使用FiddlerEverywhere進行中間人讀取時如何避免被檢測到當你使用FiddlerEverywhere...

Python 3.6加載Pickle文件報錯"__builtin__"模塊未找到怎麼辦?Python 3.6加載Pickle文件報錯"__builtin__"模塊未找到怎麼辦?Apr 02, 2025 am 07:12 AM

Python3.6環境下加載Pickle文件報錯:ModuleNotFoundError:Nomodulenamed...

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)