在開始學(xué)習(xí)Python之前,你需要先選擇最適合自己的IDE(集成開發(fā)環(huán)境)。為了解決這一需求,本文調(diào)查了很多可用的工具,并分析了它們的優(yōu)缺點(diǎn),為你選擇Python IDE提供一些建議。
[圖片上傳失敗...(image-c0b4f5-1550147366271)]
Python于1991年發(fā)布,由Guido van Rossum 創(chuàng)建。這一解釋性的高級(jí)編程語(yǔ)言是為通用編程而開發(fā)的。Python解釋器可以在多個(gè)操作系統(tǒng)上使用,包括Linux,MacOS和Windows。
有著近三十年運(yùn)行過(guò)程的Python已經(jīng)在編程領(lǐng)域廣為流行。使用IDLE或Python Shell來(lái)寫Python代碼對(duì)于較小的項(xiàng)目是可取的,但是在處理成熟的機(jī)器學(xué)習(xí)或數(shù)據(jù)科學(xué)項(xiàng)目時(shí)并不實(shí)用。
在這種情況下,你需要使用IDE(集成開發(fā)環(huán)境)或者專用代碼編輯器。因?yàn)镻ython是最主要的編程語(yǔ)言之一,所以有許多可用的IDE。問(wèn)題就變成了“哪個(gè)是最好的Python IDE?”
顯然,沒有一個(gè)Python IDE或者代碼編輯器可以被冠以“最好”的標(biāo)簽。因?yàn)槊恳粋€(gè)IDE和代碼編輯器都有它們自己的優(yōu)缺點(diǎn)。此外,在大量的IDE中進(jìn)行選擇還很費(fèi)時(shí)。
但不用擔(dān)心,為了幫助你選擇正確的IDE,本文整理了一些主要的Python IDE,這些IDE都是專門為處理數(shù)據(jù)科學(xué)項(xiàng)目而創(chuàng)建的。
Atom
平臺(tái)
Linux/macOS/Windows
官網(wǎng)
類型
在學(xué)習(xí)的道路上肯定會(huì)遇到困難,沒有好的學(xué)習(xí)資料怎么去學(xué)習(xí)呢?
如果你感覺學(xué)不會(huì)?莫慌,推薦你加群
前面923中間414后面804 ,群里有志同道合的小伙伴
互幫互助,還可以拿到許多視頻教程!
通用文本編輯器
Atom 是一個(gè)免費(fèi)的、開源的文本和源碼編輯器,可用于多種編程語(yǔ)言,包括Java,PHP和Python。文本編輯器支持Node.js編寫的插件。盡管Atom可用于多種編程語(yǔ)言,但它有趣的數(shù)據(jù)科學(xué)特性顯示了它對(duì)Python的偏愛。
Atom的最大功能之一是對(duì)SQL查詢的支持。但首先需要安裝Data Atom 插件來(lái)訪問(wèn)該功能。它為Microsoft SQL Server、MySQL和 PostgreSQL提供了支持。此外,在Atom中你無(wú)需打開任何其它的窗口就可以可視化結(jié)果。
另一個(gè)使Python 數(shù)據(jù)科學(xué)家受益的Atom 插件是Markdown Prevoew Plus。它支持編輯和可視化Markdown文件,還能允許你預(yù)覽、渲染LaTeX方程式等。
優(yōu)點(diǎn)
- 積極的社區(qū)支持
- 與Git的完美集成
- 為管理多個(gè)項(xiàng)目提供支持
缺點(diǎn)
- 在老舊的CPU上可能會(huì)出現(xiàn)性能問(wèn)題
- 有移植問(wèn)題
Jupyter Notebook
平臺(tái)
Linux/macOS/Windows
官網(wǎng)
類型
基于Web的IDE
Jupyter Netbook在2014年由IPython演變而來(lái),是一個(gè)基于服務(wù)器—客戶端結(jié)構(gòu)的Web應(yīng)用程序。它允許你創(chuàng)建和操作稱為notebooks的筆記本文檔。對(duì)于Python數(shù)據(jù)科學(xué)家來(lái)說(shuō),Jupyter Notebook是必不可少的,因?yàn)樗峁┝俗钪庇^且交互的數(shù)據(jù)科學(xué)環(huán)境之一。
除了作為IDE進(jìn)行操作之外,Jupyter Notebook還可以作為教育或演示工具。此外,對(duì)于那些剛剛開始數(shù)據(jù)科學(xué)工作的人來(lái)說(shuō),它無(wú)疑是一個(gè)完美的工具。你可以輕松地使用Jupyter Notebook查看和編輯代碼,從而創(chuàng)建令人印象深刻的報(bào)告。
通過(guò)運(yùn)用像Matplotlib和Seaborn這樣的可視化庫(kù),你可以在同一篇文章中像展示代碼一樣展示圖表。此外,你可以將整個(gè)工作導(dǎo)出到PDF、HTML或.py文件。與IPython一樣,Project Jupyter是一組項(xiàng)目的總稱,包括Notebook本身、控制臺(tái)和Qt控制臺(tái)。
優(yōu)點(diǎn)
缺點(diǎn)
- 安裝過(guò)程復(fù)雜
PyCharm
平臺(tái)
Linux/macOS/Windows
官網(wǎng)
類型
Python專用IDE
Pycharm是專門用于Python的IDE。Pycharm和Python的關(guān)系就是Eclipse對(duì)于Java的關(guān)系。這一全功能集成開發(fā)環(huán)境提供免費(fèi)版本和付費(fèi)版本,分別稱為社區(qū)版和專業(yè)版。它是安裝速度最快的IDE之一,安裝過(guò)程非常簡(jiǎn)單,受到數(shù)據(jù)科學(xué)家的青睞。
對(duì)于那些和IPython、Anaconda相像的發(fā)行版而言,PyCharm容易集成像Matplotlib和NumPy這樣的工具。這意味著你可以使用數(shù)組查看器和交互式繪圖輕松地處理數(shù)據(jù)科學(xué)項(xiàng)目。除此之外,IDE擴(kuò)展了對(duì)JavaScript、Angular JS等的支持,這也使它非常適合用于Web開發(fā)。
一旦你完成了安裝,PyCharm就可以輕松用于編輯、運(yùn)行、編寫和調(diào)試Python代碼。要開始一個(gè)新的Python項(xiàng)目,你只需打開一個(gè)新文件并開始寫下代碼。除了提供直接的調(diào)試和運(yùn)行特性外,PyCharm還提供對(duì)源代碼的控制并支持大型項(xiàng)目。
優(yōu)點(diǎn)
- 積極的社區(qū)支持
- 專為Python開發(fā),可用于數(shù)據(jù)科學(xué)和非數(shù)據(jù)科學(xué)項(xiàng)目
- 易于新手及經(jīng)驗(yàn)豐富的開發(fā)者使用
- 更快的重新索引
- 運(yùn)行、編輯和調(diào)試Python代碼而不需要任何外部需求
缺點(diǎn)
- 下載時(shí)可能比較慢
- 默認(rèn)設(shè)置可能需要在使用現(xiàn)有項(xiàng)目之前進(jìn)行調(diào)整
Rodeo
平臺(tái)
Linux/macOS/Windows
官網(wǎng)
類型
Python專用IDE
帶有橙色的標(biāo)志暗示了這個(gè)Python IDE是專門為執(zhí)行數(shù)據(jù)分析而開發(fā)的。如果你對(duì)RStudio有一些經(jīng)驗(yàn),那么你就會(huì)知道Rodeo和RStudio有很多相同之處。對(duì)于那些不了解RStudio的人來(lái)說(shuō),它是R語(yǔ)言最熱門的集成開發(fā)環(huán)境。
像RStudio一樣,Rodeo的窗口分為四個(gè)部分,即文本編輯器、控制臺(tái)、用于變量可視化的環(huán)境以及繪圖/庫(kù)/文件。
令人驚訝的是,Rodeo和RStudio都與MATLAB有著很大的相似性。
Rodeo最棒的地方在于它為初學(xué)者和經(jīng)驗(yàn)豐富地開發(fā)者提供了同等程度的便利。由于Python IDE允許你在創(chuàng)建的同時(shí)查看和探索,對(duì)于那些使用Python剛開始數(shù)據(jù)科學(xué)工作的人來(lái)說(shuō),Rodeo無(wú)疑是最好的IDE之一。IDE還擁有內(nèi)置教程,并附帶幫助材料。
優(yōu)點(diǎn)
大量定制化內(nèi)容
可查看并探索實(shí)時(shí)創(chuàng)建的內(nèi)容
自動(dòng)完成和語(yǔ)法突出功能可讓您更快地編寫代碼,并且支持IPython
缺點(diǎn)
- 很多bug
- 不那么積極的支持
- 存在內(nèi)存問(wèn)題
Spyder
平臺(tái)
Linux/macOS/Windows
官網(wǎng)
類型
Python專用 IDE
Spyder是一個(gè)開源的Python專用IDE。它的獨(dú)特之處在于它針對(duì)數(shù)據(jù)科學(xué)工作流進(jìn)行了優(yōu)化。它與Anaconda包管理器捆綁在一起,后者是Python編程語(yǔ)言的標(biāo)準(zhǔn)發(fā)行版。Spyder具有所有必需的IDE特性,包括代碼完成和集成的文檔瀏覽器。
專門為數(shù)據(jù)科學(xué)項(xiàng)目構(gòu)建,Spyder展示了一個(gè)平滑的學(xué)習(xí)曲線,允許你很快學(xué)習(xí)它。在線幫助選項(xiàng)允許你在開發(fā)項(xiàng)目的同時(shí)查找關(guān)于庫(kù)的具體信息。此外,這個(gè)Python專用IDE與RStudio相似。因此,從R語(yǔ)言切換到Python也適合。
Spyder對(duì)Python庫(kù),如Matplotlib和SiciPy的集成支持進(jìn)一步證明了它尤其適用于數(shù)據(jù)科學(xué)家。除了可觀的IPython/Jupyter集成之外,Spyder還有一個(gè)獨(dú)特的“可變資源管理器”特性。它允許使用基于表的布局顯示數(shù)據(jù)。
優(yōu)點(diǎn)
代碼完成和變量探索
易于使用
完美地用于數(shù)據(jù)科學(xué)項(xiàng)目
整潔的界面
積極的社區(qū)支持
缺點(diǎn)
- 缺乏非數(shù)據(jù)科學(xué)項(xiàng)目的能力
- 對(duì)高級(jí)Python開發(fā)人員來(lái)說(shuō)過(guò)于基礎(chǔ)
如何選取最好的Python IDE?
這完全取決于你需要完成什么樣的要求。雖然如此,這里有一些一般建議:
- 剛開始使用Python時(shí),選擇定制較少、附加特性較少的IDE。其他的功能越少,越適合初始學(xué)習(xí)。
- 將IDE特性與你的期望進(jìn)行比較。
- 嘗試幾個(gè)IDE將幫助你更好地理解哪個(gè)IDE更適合特定需求。