工欲善其事,必先利其器,選擇編輯器或IDE(集成開發(fā)環(huán)境)是學(xué)習(xí)python編程的第二件大事。
Python開發(fā)工具有很多,諸如IDLE、Pycharm、Spyder、Eclipse+Pydev、VScode、Wing、Jupyter等,可以說各有千秋。
新手比較推薦的是Pycharm、Jupyter Notebook,前者是目前最受歡迎的Python IDE,可以進(jìn)行專業(yè)的python項(xiàng)目開發(fā),功能極為全面,后者是一款基于Web的Python工作臺(tái),適合做數(shù)據(jù)分析、機(jī)器學(xué)習(xí)、可視化、教學(xué)演示,對(duì)新手非常友好。
什么是Python IDE?
IDE代表集成開發(fā)環(huán)境,它不僅包括用于管理代碼的標(biāo)準(zhǔn)代碼編輯器,而且還提供用于調(diào)試,執(zhí)行和測(cè)試的全面工具集,這是軟件開發(fā)的必備功能,一些IDE還帶有內(nèi)置的編譯器和解釋器。
下面列出了常見的IDE提供的一部分標(biāo)準(zhǔn)功能:
- 語法高亮
- 版本控制
- 構(gòu)建自動(dòng)化
- 可視化編程
- 代碼提示及自動(dòng)補(bǔ)全
- 代碼重構(gòu)
- 外部工具集成
大部分IDE都支持多平臺(tái),包括 Windows, Mac和Linux,并且是免費(fèi)的。如果你是一個(gè)學(xué)生,并且計(jì)劃去學(xué)習(xí)Python,那么可以嘗試一些免費(fèi)的IDE,比如Pydev + Eclipse, Spyder,VIM等。
然而,也有更高級(jí)的面向企業(yè)和專業(yè)開發(fā)人員的商業(yè)IDE,比如PyCharm、Wing IDE、 Sublime Text 3等。
IDE和代碼編輯器的區(qū)別?
前面說過IDE是包含了代碼編輯器的集成開發(fā)環(huán)境,而代碼編輯器其實(shí)就是一個(gè)文本編輯器,和windows的記事本類似。不過代碼編輯器有編程專屬的功能,比如:語法高亮、代碼格式化、跨平臺(tái)、多文檔、多視圖。
Pycharm、Spyder、IDLE等是IDE,Sublime Text 3、Notepad++、Vim等是代碼編輯器。
總的來說,IDE可以替代代碼編輯器,但代碼編輯器無法取代IDE。
如果你只是想簡單的學(xué)習(xí)一下python,或者運(yùn)行些python代碼,那么在線的python IDE也能幫助你完成這樣的工作,比如Pythonfiddle.com、pythonanywhere.com, repl.it 和 ideone.com。
哪些IDE或代碼編輯器值得推薦?
1. PyCharm
PyCharm是一個(gè)跨平臺(tái)的全功能Python開發(fā)工具,是JetBrains公司的產(chǎn)品。
- 類型:IDE
- 首次發(fā)行時(shí)間:2010年
- 支持平臺(tái):Windows, macOS, Linux
- 適合人群:初、中、高開發(fā)人群
- 支持語言:Python, Javascript, CoffeeScript, etc.
- 費(fèi)用:社區(qū)版免費(fèi),專業(yè)版199刀每年
- 使用Pycharm的公司:推特、惠普、eBay等
- 下載:PyCharm: the Python IDE for Professional Developers by JetBrains
Pycharm具有多種功能,例如代碼分析、圖形化調(diào)試器,集成測(cè)試器、集成版本控制系統(tǒng),并支持使用Django進(jìn)行網(wǎng)頁開發(fā)。借助PyCharm的API,開發(fā)人員可以創(chuàng)建自己的自定義插件,以向IDE添加新功能。
主要功能包括:
- 代碼分析與輔助功能,擁有補(bǔ)全代碼、高亮語法和錯(cuò)誤提示;
- 項(xiàng)目和代碼導(dǎo)航:專門的項(xiàng)目視圖,文件結(jié)構(gòu)視圖和和文件、類、方法和用例的快速跳轉(zhuǎn);
- 重構(gòu):包括重新命名,提取方法,引入變量,引入常量、pull,push等;
- 支持Web框架: Django、Pyramid、web2py、google app engine和Flask;
- 集成Python調(diào)試器;
- 集成單元測(cè)試,按行覆蓋代碼;
- Google App Engine下的Python開發(fā);
- 集成版本控制系統(tǒng):為Mercurial,Git, Subversion, Perforce 和 CVS提供統(tǒng)一的用戶界面,擁有修改以及合并功能。
2. Eclipse + Pydev
Eclipse 是非常流行的 IDE,而且已經(jīng)有了很久的歷史。Eclipse with Pydev 允許開發(fā)者創(chuàng)建有用和交互式的 Web 應(yīng)用。PyDev 是 Eclipse 開發(fā) Python 的 IDE,支持 Python,Jython和 IronPython 的開發(fā)。
- 類型:IDE
- 首次發(fā)行時(shí)間:2001 —「Eclipse」, 2003 —「Pydev」
- 支持平臺(tái):Windows, macOS, Linux
- 適合人群:中、高階開發(fā)人群
- 支持語言:Python
- 費(fèi)用:全部免費(fèi)
- 使用Pycharm的公司:Hike, Edify, Accenture, Wongnai, and Webedia.等
- 下載:PyDev
Eclipse是頂級(jí)I?DE之一,支持多種編程語言,包括JAVA、Python等。Eclipse最初是為開發(fā)Java應(yīng)用程序而創(chuàng)建的,通過插件引入了對(duì)其他編程語言的支持。用于Python開發(fā)的插件是Pydev,它具有Eclipse IDE以外的其他優(yōu)點(diǎn),例如:
- Django集成
- 自動(dòng)代碼補(bǔ)全
- 多語言支持
- 集成的Python調(diào)試
- 代碼分析
- 錯(cuò)誤標(biāo)記
- 源代碼控制集成
- 代碼折疊
- UML編輯和查看
- 單元測(cè)試整合
3. Jupyter
Jupyter是一款開源IDE,IPython的衍生品,旨在“為數(shù)十種編程語言的交互式計(jì)算開發(fā)開源軟件,開放標(biāo)準(zhǔn)和服務(wù)”它的名字來自Julia、python、R三種語言的組合,主要是用來做數(shù)據(jù)科學(xué)。
Jupyter家族有Jupyter Notebook、Jupyter Lab、Jupyter Hub三大產(chǎn)品,前兩者都是基于Web的交互式計(jì)算環(huán)境,Hub是服務(wù)器端的應(yīng)用。
- 類型:IDE
- 首次發(fā)行時(shí)間:2015
- 支持瀏覽器:Chrome, Firefox, Safari等
- 適合人群:所有人
- 支持語言:Python
- 費(fèi)用:全部免費(fèi)
- 使用Pycharm的公司:Google, Bloomberg, Microsoft, IBM, and Soundcloud.等
- 下載:Project Jupyter
Jupyter Notebook是以網(wǎng)頁的形式打開,可以在網(wǎng)頁頁面中直接編寫代碼和運(yùn)行代碼,代碼的運(yùn)行結(jié)果也會(huì)直接在代碼塊下顯示。如在編程過程中需要編寫說明文檔,可在同一個(gè)頁面中直接編寫,便于作及時(shí)的說明和解釋。
Jupyter主要特點(diǎn):
- 可選擇多種編程語言
- 適合數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)、可視化
- 編程時(shí)具有語法高亮、縮進(jìn)、tab補(bǔ)全的功能。
- 可直接通過瀏覽器運(yùn)行代碼,同時(shí)在代碼塊下方展示運(yùn)行結(jié)果。
- 以富媒體格式展示計(jì)算結(jié)果。富媒體格式包括:HTML,LaTeX,PNG,SVG等。
- 對(duì)代碼編寫說明文檔或語句時(shí),支持Markdown語法。
- 支持使用LaTeX編寫數(shù)學(xué)性說明
4. Spyder
Spyder是一個(gè)開源的python集成開發(fā)環(huán)境,非常適合用來進(jìn)行科學(xué)計(jì)算方面的python開發(fā)。同時(shí),Spyder 是用python開發(fā)的,遵循MIT協(xié)議,可免費(fèi)使用。
- 類型:IDE
- 首次發(fā)行時(shí)間:2009
- 支持平臺(tái):Windows, macOS, Linux
- 適合人群:數(shù)據(jù)科學(xué)開發(fā)者
- 支持語言:Python
- 費(fèi)用:全部免費(fèi)
- 下載:https://www.spyder-ide.org/
Spyder有一個(gè)Editor(編輯器)用于編寫代碼,Console(控制臺(tái))可以評(píng)估代碼并且在任何時(shí)候都可以看到運(yùn)行結(jié)果,Variable Explorer(變量管理器)可以查看代碼中定義的變量,還有其他的一些設(shè)備可以幫你高效地開發(fā)代碼。
為什么說Spyder適合數(shù)據(jù)科學(xué)?它結(jié)合了綜合開發(fā)工具的高級(jí)編輯、分析、調(diào)試功能以及數(shù)據(jù)探索、交互式執(zhí)行、深度檢查和科學(xué)包的可視化功能,為用戶帶來了很大的便利。
5. IDLE
IDLE是Python內(nèi)置的IDE,安裝Python后便可直接使用,初學(xué)者可以利用它方便地創(chuàng)建、運(yùn)行、測(cè)試和調(diào)試Python程序。
- 類型:IDE
- 首次發(fā)行時(shí)間:1998
- 支持平臺(tái):Windows, macOS, Linux
- 適合人群:初學(xué)者
- 支持語言:Python
- 費(fèi)用:全部免費(fèi)
- 下載:https://www.python.org/downloads/
IDEL 具有兩個(gè)主要窗口類型,分別是命令行窗口和編輯器窗口。用戶可以同時(shí)打開多個(gè)編輯器窗口。它提供的功能包括:多次撤銷、語法高亮、智能縮進(jìn)、函數(shù)調(diào)用提示、自動(dòng)補(bǔ)全、替換文本、斷點(diǎn)調(diào)試、單步調(diào)試等。
6. VS Code
Visual Studio Code(簡稱VS Code)是微軟開發(fā)的免費(fèi)代碼編輯器,內(nèi)置對(duì)JavaScript, TypeScript和Node.js的支持,還可以通過豐富的拓展支持 C++, C#, Java, Python, PHP, Go等語言的開發(fā)。
- 類型:代碼編輯器&輕量級(jí)IDE
- 首次發(fā)行時(shí)間:2001年
- 支持平臺(tái):Windows, macOS, Linux
- 適合人群:初、中階開發(fā)人群
- 支持語言:Python、Java等絕大部分語言
- 費(fèi)用:全部免費(fèi)
- 下載:https://code.visualstudio.com/Download
通過安裝Python插件,VS Code可以變身為一款輕量級(jí)的Python IDE,具有豐富的功能,包括代碼高亮、自動(dòng)補(bǔ)全、debug、調(diào)試、單元測(cè)試、notebook集成、網(wǎng)站開發(fā)等。

另外,VS Code支持在命令面板中(快捷鍵 Ctrl+Shift+P)搜索和輸入命令,從而實(shí)現(xiàn)指定功能,例如安裝擴(kuò)展、設(shè)置屬性等、調(diào)用擴(kuò)展的命令。
在控制面板做的設(shè)置都會(huì)自動(dòng)保存到 json,也可以直接修改 json 文件,方便備份或部署。
原文鏈接:https://www.toutiao.com/i6965360130875752968/