前兩天出差,趁着熱情再玩玩Python吧
IDE就在VS和Pycharm中選吧,這兩個IDE都很喜歡
一、VS
能在VS中開發Python是最好,平時習慣了。可以安裝PTVS,直接新建個Python項目,就會提示下載PTVS了,安裝完試了下:
1、直接新建文件,選擇python,建了個.py文件,是不能運行和調試的,點那個【Execute Project in Python Interactive】也有問題,要新建項目才可以
2、開頭不用# encoding: utf-8 也可以支持中文,運行出來的Python窗口能正確顯示中文。網上說
默認的選擇是“簡體中文(GB18030) - 代碼頁 54936”
要替換為“Unicode (UTF-8 無簽名) - 代碼頁 65001”
但我試了恰好相反,默認的是GB2312正常,要是改成了UTF-8,反而亂碼了
3、下斷點后調試非常親切,和平時開發C#一樣,快速監視也可以用
4、沒有智能提示,去網上下了一個Python intellisense Enhancer,結果打字是反的來的。。。就是要打print,就變成tnirp。。。
找了半天,原來是這個插件每次輸入文字就觸發Ctrl + J,這個快捷鍵默認是列出成員,即智能提示,但大家快捷鍵可能會改啊,我就是改成左移字符。。。什么鬼,每次輸入都觸發智能提示,雖然能達到效果,感覺怪怪的。。。
https://pyint.codeplex.com/workitem/1619
Right now the Python Intellisense Explorer is initiating and Intellisense session by sending the key stroke Ctrl+J to Visual Studio. This generally works but suffers from a couple of reliability issues in non-standard cases
Ctrl+J isn't always mapped to display Intellisense. Users are free to bind the Intellisense command (Edit.ListMembers) to other key values
In the case Ctrl+J isn't mapped to Edit.ListMembers it will be interpreted as a literal key stroke and cause spurious new lines to be inserted into the code base.
如果不下這個插件的話,要提示要手動按下Ctrl + J(或自定義的其它快捷鍵來觸發【列出成員】)也是可以
=================
網上找了段代碼,注釋掉放在前面,對着敲了一遍,感覺智能提示還是可以的,也沒必要太在意它的實現方式,事實上,它官網也說明了它的原理,就是輸個字觸發下Ctrl + J。。。不過實際使用中感覺不出什么,還是很順暢的:
OpenSource Project Link:
https://pyint.codeplex.com/
Implementation Detail
It's a simple editor extension listening text change event. It just simulate the key stroke ( Ctrl + J ) to show the intellisense box.
二、PyCharm
代碼提示完善許多,格式化代碼也強大些,是一套完整的IDE,如果沒有VS用這個足夠了,但已有VS就感覺有些重復,畢竟VS用習慣了,又有一堆自定義的快捷鍵用的順手,換成PyCharm又要重新設置一遍快捷鍵,包括代碼字體顏色什么的,好麻煩,不是專業開發Python的,偶爾玩一玩還是用VS算了。
而且以后VS和Resharper說不定對Python支持越來越多。就像以前寫UI層有試過一下WebStorm,新鮮了一陣還是用回VS。