這兩年被Python初學(xué)小白問到最多的問題就是,該用什么代碼編輯工具橄维?
說實(shí)話尺铣,我個人是用Jupyter Notebook最多,主要是經(jīng)常做數(shù)據(jù)可視化争舞,方便些凛忿。
但對于初學(xué)者來說,PyCharm仍是不二的選擇竞川,甚至我建議你只用PyCharm.
從當(dāng)前所有主流Python IDE來看店溢,PyCharm是最適合做Python開發(fā)的,特別對新手而言委乌,可以節(jié)省很多不必要的時間成本床牧。
我也常用PyCharm寫腳本,偶爾開發(fā)一些web應(yīng)用遭贸,PyCharm的完善程度可以說沒有一個IDE能達(dá)到戈咳。
其他IDE相比,PyCharm主要有以下4個優(yōu)點(diǎn)壕吹,后面會一一介紹:
- 簡潔的代碼編輯環(huán)境
- 強(qiáng)大的智能代碼輔助功能(智能代碼補(bǔ)全著蛙、代碼檢查、實(shí)時錯誤高亮顯示)
- 豐富的內(nèi)建開發(fā)者工具(VCS耳贬、數(shù)據(jù)庫踏堡、遠(yuǎn)程開發(fā)、調(diào)試咒劲、測試顷蟆、性能分析...)
- 完善的Web開發(fā)和數(shù)據(jù)科學(xué)支持(Django、Flask腐魂、JS慕的、notebook、pandas...)
同時挤渔,PyCharm作為跨平臺應(yīng)用程序,與Linux风题、macOS和Windows平臺兼容判导。
PyCharm是JetBrain公司的商業(yè)化工具嫉父,就是那個開發(fā)了IntelliJ IDEA、Kotlin的捷克軟件公司眼刃。
用戶可以使用3個版本的PyCharm绕辖,分別是社區(qū)版、專業(yè)版擂红、教育版仪际。
其中社區(qū)版是免費(fèi)的,但閹割了很多功能昵骤;
專業(yè)版是付費(fèi)的树碱,功能完善,首年199美元变秦,續(xù)費(fèi)可打折成榜;
教育版是免費(fèi)的,面向在校學(xué)生和教育工作者蹦玫,需要有相關(guān)資質(zhì)才能申請赎婚。
PyCharm的特點(diǎn)詳細(xì)如下(參考官網(wǎng))
1.智能代碼編輯器
PyCharm帶有智能代碼編輯器,有助于編寫高質(zhì)量的Python代碼樱溉。它通過為關(guān)鍵字挣输、類和函數(shù)(即語法和錯誤突出顯示)提供不同的顏色顯示,提高了代碼理解和可讀性福贞。
代碼編輯器還能代碼補(bǔ)全撩嚼、代碼檢查、實(shí)時錯誤高亮顯示和 快速修復(fù)肚医,并能實(shí)現(xiàn)自動化代碼重構(gòu)和豐富的導(dǎo)航功能绢馍。
2.集成工具
PyCharm大量的開箱即用工具包括集成的調(diào)試器和測試運(yùn)行程序;Python分析器肠套;內(nèi)置的終端舰涌;與主要VCS的集成和內(nèi)置的數(shù)據(jù)庫工具; 利用遠(yuǎn)程解釋器的遠(yuǎn)程開發(fā)能力你稚;集成的ssh終端瓷耙;以及與Docker和Vagrant的集成。
PyCharm提供的一些最基本的集成工具包括:
Anaconda——一個免費(fèi)刁赖、開源的Python發(fā)行版搁痛,面向科學(xué)計(jì)算,簡化了包管理和部署宇弛。
IPython——一個用于交互式計(jì)算的強(qiáng)大命令外殼鸡典。
Kite——一個人工智能驅(qū)動的自動完成插件。
Pylint-源代碼枪芒、bug和質(zhì)量檢查器彻况。
pytest——為Python代碼編寫小型測試的框架谁尸。
WakaTime——一個開發(fā)人員儀表盤,具有生產(chǎn)力指標(biāo)和自動時間跟蹤功能
3.數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)[僅限專業(yè)版]
PyCharm支持Matplotlib和SciPy等科學(xué)庫纽甘,幫助Python開發(fā)人員完成數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)項(xiàng)目良蛮。
4.谷歌應(yīng)用引擎[僅限專業(yè)版]
Google App Engine,或直接稱為App Engine悍赢,是一個PaaS和云計(jì)算平臺决瞳,旨在開發(fā)和托管web應(yīng)用程序。
它為web應(yīng)用程序提供了自動伸縮功能左权。PyCharm的專業(yè)版為Google App Engine提供支持皮胡。
5.綜合調(diào)試和測試
一般IDE都支持調(diào)試和測試程序,PyCharm也不例外涮总,提供了一個集成的Python調(diào)試器胸囱,和line-by-line代碼覆蓋的集成單元測試。
6.多技術(shù)開發(fā)[僅限專業(yè)版]
Python開發(fā)人員可以使用PyCharm創(chuàng)建web應(yīng)用程序瀑梗。因此烹笔,Python IDE支持流行的web技術(shù),包括CoffeeScript抛丽、CSS谤职、HTML、JavaScript和TypeScript亿鲜。
此外允蜈,它還包括對Cython、SQL的支持蒿柳。
PyCharm中還提供實(shí)時編輯功能饶套,即開發(fā)人員可以在實(shí)時推送網(wǎng)頁的同時創(chuàng)建/修改網(wǎng)頁。因此垒探,可以在web瀏覽器上直接跟蹤更改妓蛮。也可以使用AngularJS或NodeJS構(gòu)建web應(yīng)用程序。
7.項(xiàng)目和代碼導(dǎo)航
代碼導(dǎo)航功能使開發(fā)人員更容易導(dǎo)航到類圾叼、函數(shù)或文件蛤克。它還有助于顯著減少編輯和增強(qiáng)Python代碼所需的工作量和時間。文件結(jié)構(gòu)視圖和專用項(xiàng)目視圖隨時可用夷蚊。
lens模式允許開發(fā)人員徹底檢查和調(diào)試整個Python源代碼构挤。通過代碼導(dǎo)航,幾乎可以在短時間內(nèi)定位元素惕鼓、變量等筋现。開發(fā)人員可以在類、文件和方法之間快速切換。
8.重構(gòu)
PyCharm中的重構(gòu)功能有助于改進(jìn)Python程序的內(nèi)部結(jié)構(gòu)矾飞,而不會影響Python程序的外部性能彻犁。對局部變量和全局變量進(jìn)行更改既高效又快速。
9.遠(yuǎn)程開發(fā)
PyCharm允許在遠(yuǎn)程主機(jī)或虛擬機(jī)上運(yùn)行凰慈、調(diào)試、測試和部署應(yīng)用程序驼鹅。
為此微谓,Python IDE提供了:
- 集成SSH終端
- Docker與Vagrant
- Remote interpreters
10.支持流行的Python Web框架[僅限專業(yè)版]
PyCharm允許開發(fā)人員在Python開發(fā)項(xiàng)目中利用Django。Python IDE提供了自動完成功能输钩,也可以使用Django編寫調(diào)試代碼豺型。
PyCharm還支持其他流行的Python框架,如Flask买乃、Pyramid和web2py姻氨。
11.版本控制系統(tǒng)(VCS)集成
版本控制系統(tǒng)(VCS)簡單地跟蹤對文件、應(yīng)用程序和其他信息源所做的更改剪验。
PyCharm為CVS肴焊、Git、Mercurial功戚、Perforce和Subversion提供了統(tǒng)一的用戶界面娶眷。