VSCode中設置Python interpreter
Python解釋器設置
為了在vscode中看到package源碼,需要設置好vscode中的Python解釋器路徑,然后就可以點擊右鍵—>轉到定義,隨意的看到package源碼了,這樣看package黑箱內部很方便了。
- 打開設置
文件—》首選項——》設置
- 搜索python.pythonPath
可以看到現在的解釋器是:默認的”python”,然后在右側的用戶設置中改為自己的解釋器,覆蓋默認的。
這樣就可以了,各種函數和關鍵字就可以找到庫中的定義了。
- 跳轉到定義
如果要看某個函數或者對象的定義的話,有三種方法:
-
在對象上右擊選擇“查看定義”,會彈出一個窗口,正好包含所查看的對象。
-
右擊選擇“轉到定義”或者按Ctrl並單擊,這樣會在當前文件跳到目標文件,看完Ctrl+alt+-可以返回,如果要對比着看的話這樣有些不方便。
-
按Ctrl+Alt並單擊,這樣會在一個新的窗口打開目標文件,看完關閉即可。
python插件中默認使用pylint的一個工具,專門用來檢測python代碼的書寫是否有錯誤和是否符合良好的習慣。python官網(https://www.python.org/dev/peps/pep-0008/)專門有版塊介紹推薦的python代碼習慣,比如類,函數等的命名規則,遵守這些規則可以使自己的代碼更加上檔次。
然后pylint在面對django框架時表現的有些不足,因為django使用了大量的元編程(metaprograming)思想以及鴨子模型,以至於在程序運行時會修改不少對象的屬性和行為(妹的,我也不知道元編程是什么鬼),但是這樣給pylint這樣的語法檢測程序帶來了比較大的困難。典型的就是集成了django.db.models.Model的模型層對象在編譯時沒有objects屬性,但是運行時卻有,造成我們在編寫代碼時pylint會報"has no objects attributes"之類的錯誤,雖然不影響程序運行,但是很影響心情啊。所以有人專門開發了pylint的插件pylint-django,很詳細的介紹的文章在這里(https://blog.landscape.io/using-pylint-on-django-projects-with-pylint-django.html),作者好像就是插件的開發者,像熱心的程序員致敬哦。使用pip install pylint-django即可安裝,命令行里可以通過 pylint --load-plugins pylint_django [other option]的方法來使用,一定要注意是pylint_django,不是pylint-django。
但是,我現在說的是在vscode里面配置使用pylint-django,方法非常簡單,在vscode中選擇"文件"->"首選項"->"設置"打開vscode的設置文件,然后"python.linting.pylintArgs"處添加"--load-plugins", "pylint_django"即可。如圖:
有必須要的話重啟下vscode,然后pylint就不會在報錯了。