摘要:學(xué)習(xí)利器我的小白安裝之路序易用,但用好卻不易,其中比較頭疼的就是包管理和不同版本的問題,特別是當(dāng)你使用的時候。另外值得一提的是,并不僅僅管理的工具包,它也能安裝非的包。
Python學(xué)習(xí)利器——我的小白 Anaconda安裝之路
序
Python易用,但用好卻不易,其中比較頭疼的就是包管理和Python不同版本的問題,特別是當(dāng)你使用Windows的時候。為了解決這些問題,有不少發(fā)行版的Python,比如WinPython、Anaconda、pycharm等,這些發(fā)行版將python和許多常用的package打包,方便pythoners直接使用,此外,還有virtualenv、pyenv等工具管理虛擬環(huán)境。
個人嘗試了很多類似的發(fā)行版,最終選擇了Anaconda,因?yàn)槠鋸?qiáng)大而方便的包管理與環(huán)境管理的功能。該文主要介紹下Anaconda,對Anaconda的理解,并簡要總結(jié)下相關(guān)的操作。
一、為什么選擇Anaconda?1.1 什么是 Anaconda?
Anaconda是專注于數(shù)據(jù)分析的Python發(fā)行版本,包含了conda、Python等190多個科學(xué)包及其依賴項(xiàng)。作為好奇寶寶的你是不是發(fā)現(xiàn)了一個新名詞 conda,那么你一定會問 conda 又是什么呢?
1.2 什么是 conda ?
conda 是開源包(packages)和虛擬環(huán)境(environment)的管理系統(tǒng)。
packages 管理: 可以使用 conda 來安裝、更新 、卸載工具包 ,并且它更關(guān)注于數(shù)據(jù)科學(xué)相關(guān)的工具包。在安裝 anaconda 時就預(yù)先集成了像 Numpy、Scipy、 pandas、Scikit-learn 這些在數(shù)據(jù)分析中常用的包。另外值得一提的是,conda 并不僅僅管理Python的工具包,它也能安裝非python的包。比如在新版的 Anaconda 中就可以安裝R語言的集成開發(fā)環(huán)境 Rstudio。
虛擬環(huán)境管理: 在conda中可以建立多個虛擬環(huán)境,用于隔離不同項(xiàng)目所需的不同版本的工具包,以防止版本上的沖突。對糾結(jié)于 Python 版本的同學(xué)們,我們也可以建立 Python2 和 Python3 兩個環(huán)境,來分別運(yùn)行不同版本的 Python 代碼。
知道 是什么(what) 的同時,我們也需要問一問 為什么(why)。那么,為什么要選擇用Anaconda呢?
1.3 Anaconda 的優(yōu)點(diǎn)?
Anaconda的優(yōu)點(diǎn)總結(jié)起來就八個字:省時省心、分析利器。
省時省心: Anaconda通過管理工具包、開發(fā)環(huán)境、Python版本,大大簡化了你的工作流程。不僅可以方便地安裝、更新、卸載工具包,而且安裝時能自動安裝相應(yīng)的依賴包,同時還能使用不同的虛擬環(huán)境隔離不同要求的項(xiàng)目。
分析利器: 在 Anaconda 官網(wǎng)中是這么宣傳自己的:適用于企業(yè)級大數(shù)據(jù)分析的Python工具。其包含了720多個數(shù)據(jù)科學(xué)相關(guān)的開源包,在數(shù)據(jù)可視化、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)等多方面都有涉及。不僅可以做數(shù)據(jù)分析,甚至可以用在大數(shù)據(jù)和人工智能領(lǐng)域。
解決了 是什么 以及 為什么 的問題后,下面讓我們看一下 怎么做(How)。
二、如何安裝Anaconda?Anaconda的下載頁參見官網(wǎng),Linux、Mac、Windows均支持。
也可以通過清華大學(xué)鏡像下載Anaconda鏡像,可以加快下載速度。
安裝時,會發(fā)現(xiàn)有不同版本的Anaconda,分別對應(yīng)Python2.7和Python3.5,兩個版本其實(shí)除了這點(diǎn)區(qū)別外其他都一樣。后面我們會看到,安裝哪個版本并不本質(zhì),因?yàn)橥ㄟ^環(huán)境管理,我們可以很方便地切換運(yùn)行時的Python版本。(由于需要安裝TensorFlow,TensorFlow需要用到Python3.5,因此傾向于直接安裝Python3.5對應(yīng)的Anaconda4.2.0)
瀏覽器打開鏡像鏈接后,會出現(xiàn)這個圖片圖片描述找到適合自己的電腦型號下載。安裝時一直點(diǎn)next就行啦。
當(dāng)出現(xiàn)下面這張圖時,就已經(jīng)安裝了Anaconda圖片描述
下載后直接按照說明安裝即可。這里想提醒一點(diǎn):盡量按照Anaconda默認(rèn)的行為安裝——不使用root權(quán)限,僅為個人安裝,安裝目錄設(shè)置在個人主目錄下(Windows就無所謂了)。這樣的好處是,同一臺機(jī)器上的不同用戶完全可以安裝、配置自己的Anaconda,不會互相影響。
根據(jù)提示進(jìn)行安裝,完成后你大概會驚訝地發(fā)現(xiàn)電腦中多了好多應(yīng)用,不用擔(dān)心,我們一項(xiàng)項(xiàng)來看:
Anaconda Navigator :用于管理工具包和環(huán)境的圖形用戶界面,后續(xù)涉及的眾多管理命令也可以在 Navigator中手工實(shí)現(xiàn)。
Jupyter notebook :基于web的交互式計(jì)算環(huán)境,可以編輯易于人們閱讀的文檔,用于展示數(shù)據(jù)分析的過程。
qtconsole:一個可執(zhí)行 IPython 的仿終端圖形界面程序,相比 Python Shell 界面,qtconsole
可以直接顯示代碼生成的圖形,實(shí)現(xiàn)多行代碼輸入執(zhí)行,以及內(nèi)置許多有用的功能和函數(shù)。
spyder:一個使用Python語言、跨平臺的、科學(xué)運(yùn)算集成開發(fā)環(huán)境。
對于Mac、Linux系統(tǒng),Anaconda安裝好后,實(shí)際上就是在主目錄下多了個文件夾(~/anaconda)而已,Windows會寫入注冊表。安裝時,安裝程序會把bin目錄加入PATH(Linux/Mac寫入~/.bashrc,Windows添加到系統(tǒng)變量PATH),這些操作也完全可以自己完成。以Linux/Mac為例,安裝完成后設(shè)置PATH的操作是
# 將anaconda的bin目錄加入PATH,根據(jù)版本不同,也可能是~/anaconda3/bin echo "export PATH="~/anaconda2/bin:$PATH"" >> ~/.bashrc # 更新bashrc以立即生效 source ~/.bashrc
安裝完成后,我們還需要對所有工具包進(jìn)行升級,以避免可能發(fā)生的錯誤。打開你電腦的終端,在Anaconda Prompt中輸入:
conda upgrade --all
在終端詢問是否安裝如下升級版本時,輸入 y。
至此,安裝完成,下面讓我們看一下如何用 Anaconda 管理工具包和環(huán)境。
安裝一個 package:
conda install package_name
這里 package_name 是需要安裝包的名稱。你也可以同時安裝多個包,比如同時安裝numpy 、scipy 和 pandas,則執(zhí)行如下命令:
conda install numpy scipy pandas
你也可以指定安裝的版本,比如安裝 1.1 版本的 numpy :
conda install numpy=1.10
移除一個 package:
conda remove package_name
升級 package 版本:
conda update package_name
查看所有的 packages:
conda list
如果你記不清 package 的具體名稱,也可以進(jìn)行模糊查詢:
conda search search_term四、如何管理Python環(huán)境?
默認(rèn)的環(huán)境是 root,你也可以創(chuàng)建一個新環(huán)境:
conda create -n env_name list of packages
其中 -n 代表 name,env_name 是需要創(chuàng)建的環(huán)境名稱,list of packages 則是列出在新環(huán)境中需要安裝的工具包。
例如,當(dāng)我安裝了 Python3 版本的 Anaconda 后,默認(rèn)的 root 環(huán)境自然是 Python3,但是我還需要創(chuàng)建一個 Python 2 的環(huán)境來運(yùn)行舊版本的 Python 代碼,最好還安裝了 pandas 包,于是我們運(yùn)行以下命令來創(chuàng)建:
conda create -n py2 python=2.7 pandas
細(xì)心的你一定會發(fā)現(xiàn),py2 環(huán)境中不僅安裝了 pandas,還安裝了 numpy 等一系列 packages,這就是使用 conda 的方便之處,它會自動為你安裝相應(yīng)的依賴包,而不需要你一個個手動安裝。
進(jìn)入名為 env_name 的環(huán)境:
source activate env_name
退出當(dāng)前環(huán)境:
source deactivate
另外注意,在 Windows 系統(tǒng)中,使用 activate env_name 和 deactivate 來進(jìn)入和退出某個環(huán)境。
刪除名為 env_name 的環(huán)境:
conda env remove -n env_name
顯示所有的環(huán)境:
conda list
當(dāng)分享代碼的時候,同時也需要將運(yùn)行環(huán)境分享給大家,執(zhí)行如下命令可以將當(dāng)前環(huán)境下的 package 信息存入名為 environment 的 YAML 文件中。
conda env export > environment.yaml
同樣,當(dāng)執(zhí)行他人的代碼時,也需要配置相應(yīng)的環(huán)境。這時你可以用對方分享的 YAML 文件來創(chuàng)建一摸一樣的運(yùn)行環(huán)境。
conda env create -f environment.yaml
常用操作
# 創(chuàng)建一個名為python27的環(huán)境,指定Python版本是2.7(不用管是2.7.x,conda會為我們自動尋找2.7.x中的最新版本) conda create --name python27 python=2.7 # 安裝好后,使用activate激活某個環(huán)境 activate python27 # 激活后,會發(fā)現(xiàn)terminal輸入的地方多了python27的字樣,實(shí)際上,此時系統(tǒng)做的事情就是把默認(rèn)3.5環(huán)境從PATH中去除,再把2.7對應(yīng)的命令加入PATH # 此時,再次輸入 python --version # 可以得到`Python 2.7.5 :: Anaconda 4.2.0 (64-bit)`,即系統(tǒng)已經(jīng)切換到了2.7的環(huán)境 # 如果想返回默認(rèn)的python 3.5環(huán)境,運(yùn)行 deactivate python34 # 刪除一個已有的環(huán)境 conda remove --name python34 --all
至此,你已跨入 Anaconda 的大門,后續(xù)就可以徜徉在 Python 的海洋中了。
安裝Anaconda給我的經(jīng)驗(yàn)總結(jié):?
? 一,一定要自己先按照教程琢磨,把文章一字不漏看完,連評論也要看,也許評論留言里就有你要解決的辦法。最后實(shí)在還是解決不了只好咨詢他人了,因?yàn)樵僮约合棺矫坏靡I(lǐng)只會讓你想放棄。?
(當(dāng)然啦咨詢別人的前提是你自己的確有努力研究想辦法解決但還是不成功。你自己有研究過,這樣別人一指點(diǎn)你,一來你聽的懂,兩人沒有溝通障礙;二來也許他人的一句話就把你混亂的思路縷清了,你就好像看見自己出錯的點(diǎn)在哪了。?)
? 二,自己多動手實(shí)踐幾次,把自己實(shí)踐錯誤的地方記錄下來,解決辦法也記錄下來,最好形成筆記。?
? 余欣博士說:“我記得當(dāng)年我去百度實(shí)習(xí)的時候,導(dǎo)師對我的第一個建議是,每天都要做日志,記錄學(xué)到的東西和遇到的問題以及解決辦法。這是一個非常好的習(xí)慣,特別是對程序員來說。”
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/40840.html
摘要:知道太多會消化不良的如圖所示,單擊,神奇的事情發(fā)生了,我們會自動在默認(rèn)的瀏覽器打開一個新的界面,長這個樣子,我們發(fā)現(xiàn)網(wǎng)址為,不用知道為什么,我們不用知道關(guān)心這些沒用的信息。 下載并安裝Anaconda 好啦,作為小白,我們的第一步是安裝能夠運(yùn)行Python的環(huán)境,所謂環(huán)境就是指我們要安裝一個軟件,之后就能用它來寫Python代碼 (覺得我對環(huán)境解釋特別智障的請繞行,我們是小白!!!) ...
摘要:按目前的發(fā)展趨勢,未來的主流版為。這里介紹一個強(qiáng)大的軟件,它實(shí)現(xiàn)和兩個版本的共存,并且可以相互轉(zhuǎn)換。應(yīng)用程序是包和環(huán)境管理器。另外值得一提的是,并不僅僅管理的工具包,它也能安裝非的包。實(shí)際上,腳本和程序使用的默認(rèn)是附帶的。 前言 初學(xué)Python時,總是被python的兩個不太兼容的版本搞得頭昏腦脹。按目前的發(fā)展趨勢,python未來的主流版為python3。但是我們經(jīng)常會遇到一些很有...
摘要:文檔寫得很清楚,也有中文版,你只要看了最初的一小部分,就可以在代碼中派上用場了。 關(guān)于爬蟲的案例和方法,我們已講過許多。不過在以往的文章中,大多是關(guān)注在 如何把網(wǎng)頁上的內(nèi)容抓取下來 。今天我們來分享下,當(dāng)你已經(jīng)把內(nèi)容爬下來之后, 如何提取出其中你需要的具體信息 。 網(wǎng)頁被抓取下來,通常就是 str 字符串類型的對象 ,要從里面尋找信息,最直接的想法就是直接通過字符串的 find 方法 ...
摘要:工具可以直接使用方式安裝和的環(huán)境配置使用集成開發(fā)工具的小白,在安裝庫以后,還要對和進(jìn)行環(huán)境配置,將其集成到中。如果小白的或安裝在其他路徑下,則從對應(yīng)的目錄找到,或者在資源管理器中搜索文件找到安裝路徑。 ...
閱讀 1839·2021-09-14 18:03
閱讀 2274·2019-08-30 15:48
閱讀 1129·2019-08-30 14:09
閱讀 514·2019-08-30 12:55
閱讀 2734·2019-08-29 11:29
閱讀 1494·2019-08-26 13:43
閱讀 2318·2019-08-26 13:30
閱讀 2375·2019-08-26 12:17