Python 開發的 IDE 和代碼編輯器,你選擇的哪一個?


為了方便,我會分兩個大類去說明,一類是適用於軟件開發的比較通用的編輯器或 IDE ,我們可以通過插件等形式支持 Python 的開發,另一個是專注於 Python 開發的編輯器或 IDE 。

不過在此之前,我們需要明白 IDE 以及代碼編輯器是什么

IDE ( Integrated Development Environment ) ,即集成開發環境。其實就是一個用於寫程序的軟件,里面集成了很多開發時常用的工具。比如,定制的代碼編輯器(支持語法高亮、自動補全等等)、編譯工具、執行工具、調試工具、版本控制工具等等。

大部分的 IDE 都支持很多種語言,並且包含的工具比上面列舉出來的多很多,所以 IDE 安裝文件基本上都比較大,需要花一定的時候去下載、去安裝。另外,也要花費一定的精力去熟悉常用的工具。

相反的,一個代碼編輯器相當於一個普通的文本編輯器,只不過能支持代碼高亮、代碼自動縮進等功能。大部分好的代碼編輯器能執行代碼、調試代碼,也支持與版本控制軟件的交互。與 IDE 相比,代碼編輯器更輕量、更快,不過內置的工具會少很多。

Python 開發時,哪些功能是核心的

不管是 IDE 還是代碼編輯器,支持的功能太多了,有很大一部分我們基本上用不到。那么,哪些是核心的呢?

保存以及重新加載文件

如果一個 IDE 或者編輯器沒法保存當前的工作或者關閉后重新打開文件不能保持之前的狀態,那這就不是一個合格的 IDE 或代碼編輯器。

在當前工作台執行代碼

如果我們執行一段代碼還得離開編輯器,那這就真的只是一個編輯器了。

調試支持

能跟蹤代碼的執行狀態,這是一個好的開發環境的基本條件,否則,當代碼出現問題時,如果我們手動的一個一個地方輸出中間信息,當碰到比較復雜的邏輯時我們會崩潰的。

代碼高亮

有了代碼高亮,會讓我們閱讀源代碼時更方便。

代碼智能格式化

比如,當我們輸入 if 或者 while 關鍵字並在最后打上冒號時,編輯器應該知道下一行要縮進。

當然,你可能覺得好的開發環境應該要有更多的功能支持,版本控制、語言幫助等。不過,上面的點只是我覺得一個合格的代碼編輯器 或 IDE 需要支持的核心功能。

大概清楚了一個開發環境所需的功能,我們先來看看比較通用的 IDE 和代碼編輯器。

能夠支持 Python 開發的通用的 IDE 和代碼編輯器

Eclipse + PyDev

分類: IDE

地址: www.eclipse.org

支持 Python 開發的插件: PyDev ( www.pydev.org )

接觸過 Java 開發的朋友肯定都用過 Eclipse 這個 IDE ,由於豐富的插件市場,使它的應用不僅僅是在 Java 開發上。這里 Python 開發也能使用,只要一個插件PyDev ,安裝很簡單,Help -> Eclipse Marketplace -> 搜索 PyDev -> 點擊 install ,最后重啟軟件就可以了。

選擇原因:如果你已經安裝了 Eclipse ,那么要支持 Python 開發的花,安裝一個插件就搞定。如果你之前有 Eclipse 的使用經驗的話,開發 Python 起來也比較順暢。

不選擇原因:如果你剛接觸 Python 開發或者軟件開發,使用 Eclipse 的話需要一定的學習成本。

Sublime Text

分類: 代碼編輯器

地址: http://www.sublimetext.com

這是一個谷歌的工程師開發的特別受歡迎的代碼編輯器,各個平台都支持。內置有 Python 語言的支持,另外也有很多插件對內置的一些特性作了擴展,比如語法高亮等。

Sublime 的插件都是由 Python 編寫的,部分插件安裝有問題的話,需要自己手動輸入 Python 代碼進行安裝,這使用起來可能會有點麻煩。

選擇原因:Sublime Text 有很多人使用,有社區支持。另外,輕量,快。

不選擇原因:不是免費的,雖說可以無限期的使用評估版本,但是經常的提示還是有些煩。當然,這在國內不重要 = = 。另外,安裝部分插件可能比較麻煩,也不直接支持在編輯器里執行和調試代碼。

Atom

分類: 代碼編輯器

地址: https://atom.io/

基於 Electron 開發。Electron 可以簡單的理解為使用 JavaScript 、Html 、Css 開發桌面應用程序的框架。所以說,Atom 各個平台都支持。如果用於 Python 開發的話,也是安裝對應的插件就可以了。

選擇原因:各個平台都支持,安裝包小,下載、安裝都比較快。

不選擇原因:也不直接支持在編輯器內調試,但可以通過插件安裝方式解決。另外,它是基於 Electron 開發的,不是原生的應用,相比 Sublime Text 等原生的軟件速度上有一定劣勢。

GNU Emacs

分類: 代碼編輯器

地址: https://www.gnu.org/software/emacs/

現在我們有蘋果系統與安卓的戰爭,之前有 Linux 系統與 Windows 系統的戰爭,再以前還有 PC 以及 Mac 的戰爭,在這更之前,還有編輯器之間的戰爭,GNU Emacs 便是這個戰爭中的一員。這個編輯器有着和 Unix 一樣長的歷史,並且擁有很多衷實的粉絲。

開源,在每個平台上都能使用。它使用 Lisp 語言進行自身的擴展,同樣,對於 Python 開發,也有很多現成的自定義腳本可以使用。

選擇原因:你了解 Emacs ,你使用 Emacs ,你喜歡 Emacs 。Lisp 是它的腳本語言,掌握了 Lisp 你能讓 Emacs 做任何事情。

不選擇原因:自定義配置意味着你要寫 Lisp 腳本,如果沒有現成的話,那你還得去學 Lisp 。另外,Emacs 上手門檻不低。

VI/VIM

分類: 代碼編輯器

地址: https://www.vim.org/

在編輯器戰爭中的另一方就是 VI/VIM 。基本上所有的類 unix 系統都有安裝它,比如 macOS 和 ubuntu 等等。它擁有同等數量的衷實的粉絲。VIM 是增強版,相比 VI ,很多功能都有不錯的加強。它通過 VIMScript 進行配置,同樣,對於開發 Python 所需的功能都有很多現成的配置(插件)。

選擇原因:你了解 VI ,你使用 VI ,你喜歡 VI 。使用 VIMScript 你能定制任何你想要的。

不選擇原因:和 Emacs 類似,VI 的學習門檻也不低。個性化的定制也得學習 VIMScript 。

Visual Studio

分類: IDE

地址: https://www.visualstudio.com/vs/

支持 Python 開發的插件: Python Tools for Visual Studio ( https://archive.codeplex.com/?p=pytools )

微軟家的,內置有很多工具。不過只支持 Windows 以及 macOS 系統。通過安裝 PTVS 插件,可以支持 Python 的開發。

選擇原因:和 Eclipse 類似,如果你已經安裝了 VS 用於其它方面的開發,那么安裝一個插件很快、很簡單。

不選擇原因:也和 Eclipse 類似,下載、安裝太浪費時間。另外,Linux 上還不支持。

Visual Studio Code

分類: 代碼編輯器

地址: https://code.visualstudio.com/

支持 Python 開發的插件: https://marketplace.visualstudio.com/items?itemName=ms-python.python

不要和上面的 VS 搞混,VS Code 只是一個代碼編輯器,它也是基於 Electron 開發,所以有着和 Atom 一樣的優點和缺點。安裝插件簡單,搜索框里搜索 Python 點擊安裝然后重啟編輯器就搞定。

選擇原因:跨平台,開源,安裝包雖小,但內置的工具卻特別多。

不選擇原因:與 Atom 類似,不是原生的應用。另外,存在部分人有不用微軟產品的傾向。

專注於 Python 開發的 IDE 或編輯器

PyCharm

分類: IDE

地址: https://www.jetbrains.com/pycharm/

這應該是做的最好的一個專注於 Python 開發的 IDE ,有付費的專業版本與免費的社區版本,在 Windows 、macOS 或 Linux 下載一個安裝包執行就能安裝了,比較簡單。

很多功能開箱即用,執行代碼、調試、版本控制等等。

選擇原因:一個專注於 Python 開發的 IDE ,擁有大量的插件以及社區的支持,編輯代碼、執行代碼、調試代碼等功能開箱即用。

不選擇原因:比較吃配置,加載費時較長。對於已有的項目,可能需要做一些額外的配置才能運行。

Spyder

分類: IDE

地址: https://github.com/spyder-ide/spyder

開源,針對數據科學作了一定的優化。和其它 Python IDE 相比有一個很大的特點,就是可以用表格的形式查看數據,有點 Matlab 的感覺,如果你是做數據相關的,我相信你一定會喜歡上這個 IDE 。

選擇原因:你是做數據科學方面的開發。

不選擇原因:對於有經驗的開發者來說,Spyder 提供的功能太基礎了,他們選擇功能更強的 IDE 或者定制編輯器的方法來滿足自己的需要。

Thonny

分類: IDE

地址: http://thonny.org

號稱是為 Python 初學者設計的編輯器,也是跨平台的。自帶有特定版本的 Python ,默認會一起安裝,所以不需要做另外的事情 ,你就可以直接着手開發了。當然,如果是有經驗的開發者,他會更改這個默認行為,使用已有的 Python 環境進行開發。

選擇原因:你是一個初學者,你想安裝一個 IDE 就能開始學習、開始寫代碼。

不選擇原因:對於有經驗的開發者來說,thonny 的功能太基礎了,並且做了一些多余的事情。另外,這個 IDE 出來時間不長,可能會碰到一些沒有現成解決方案的問題。

所以,哪一個比較適合你

當然,只有你自己才能決定,下面有幾個原則可以供你參考

* Python 初學者盡量選擇能開箱即用的 IDE ,需要自定義的地方越少,就越好。前期,重心放在語言學習上,更有成就感。

* 如果你經常使用編輯器做其它的工作,比如寫文檔等,那么使用代碼編輯器的方案或許更好。

* 如果你之前在做其它方面的開發,那么通過插件或者其它方式使你現在的工具集支持 Python 開發,這會讓你開發更順暢。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM