1. 程式人生 > >VS Code 配置 Python 開發環境

VS Code 配置 Python 開發環境

1、終端執行 Python2、安裝 Python 外掛3、檢視、安裝外部庫4、程式碼補全工具5、程式碼檢查工具5.1、pylint5.2、flake8 和 yapf

本文基於 VS Code 1.36.1

VS Code 裡是不包括 Python 的,所以你首先得安裝一個 Python。

1、終端執行 Python

安裝完 python 之後,我們可以用任何一個文字編輯工具開始寫 python 程式碼,然後在 cmd 中執行程式碼。

在 VS Code 中,在不安裝任何外掛的情況下,也可以執行 python 程式碼。

新建一個 test.py 檔案,輸入 print('Hello World!')

點選 檢視 -> 終端(快捷鍵 Ctrl + `)開啟終端,輸入 python test.py 即可執行,跟在 cmd 中執行 python 程式碼是一樣的。

2、安裝 Python 外掛

在不安裝外掛的情況下,點選 除錯 -> 啟動除錯(快捷鍵 F5)是沒辦法執行程式碼的。會讓你選擇環境,而你根本就沒有環境可選。

在 VS Code 的應用商店(快捷鍵:Ctrl + Shift + X)裡搜尋 Python 外掛,並安裝。如下圖:

按 Ctrl + Shift + P(或F1),在開啟的輸入框中輸入 Python: Select Interpreter 搜尋,選擇 Python 解析器。


選擇好解析器之後,我們就可以直接在 VS Code 裡執行(快捷鍵 Ctrl + F5)或除錯(快捷鍵 F5)Python 程式碼了。

3、檢視、安裝外部庫

Python 最強大的就是外部庫了,在 PyCharm 中,可以在 Settings 中檢視、搜尋、安裝。那麼在 VS Code 中如何安裝呢?

上文中提到,可以在終端直接執行 .py 檔案,其實,終端就相當於命令提示符(cmd),所以直接在終端輸入相應命令就可以了。

檢視已安裝包列表:

pip list

安裝外部庫:

pip install xxx

注意:當本機安裝了多個 Python 解析器的時候,pip 可能並不會安裝到當前解析器目錄下。這個我測試多次後發現,應該是跟環境變數中的順序有關,會安裝到環境變數中最靠前的解析器的目錄下。

4、程式碼補全工具

VS Code 中的程式碼補全外掛是 Visual Studio IntelliCode。同樣通過應用商店安裝。

Visual Studio IntelliCode 是一套 AI 輔助功能,可通過上下文智慧感知,程式碼樣式的推理和執行等功能提高開發人員的工作效率。

IntelliCode 通過使用經過數千個公共程式碼庫培訓的機器學習模型生成建議,而且會隨著你編寫程式碼的增長,從而變得更加準確。它會根據上下文給出程式設計建議,而不是簡單根據字母排序推薦 API。

最重要的 IntelliCode 已經支援 Python。安裝以後,可以有智慧提示了。

5、程式碼檢查工具

PyCharm 自帶程式碼檢查工具,而 VS Code 中是沒有的。

5.1、pylint

當你新建 .py 檔案,開始寫程式碼的時候,右下角可能會跳出個這個(老版本會,新版本不會了):

Pylint 是一個 Python 程式碼檢查工具。需要通過 pip 安裝。

開啟設定,新增如下設定:

"python.linting.enabled": true,
"python.linting.pylintEnabled": true,

然後對於不符合規範的程式碼,就會有波浪線提示了。

在 VS Code 1.36.1 版本,貌似不設計 python.linting.enabled": true 也可以。

5.2、flake8 和 yapf

flake8 是由 Python 官方釋出的一款輔助檢測 Python 程式碼是否規範的工具,相對於目前熱度比較高的 Pylint 來說,Flake8 檢查規則靈活,支援整合額外外掛,擴充套件性強。Flake8 是對下面三個工具的封裝:

  • PyFlakes:靜態檢查 Python 程式碼邏輯錯誤的工具。
  • Pep8:靜態檢查 PEP8 編碼風格的工具。
  • NedBatchelder’s McCabe:靜態分析 Python 程式碼複雜度的工具。

官方文件地址:https://pypi.python.org/pypi/flake8/

yapf 是一個程式碼格式化的工具。

通過 pip 安裝好 Flake8 和 Yapf 後,進行如下配置。

"python.linting.enabled": true,
"python.linting.pylintEnabled": false,
"python.linting.flake8Enabled": true,
"python.formatting.provider": "yapf",

如果裝了 pylint 的話,要設定其 Enabled = false,否則不用。

安裝好之後,我們在程式碼檔案中(.py)中右鍵,選擇格式化文件,就可以自動的進行程式碼格式化了。

程式碼檢查工具雖好,但有些嚴格的檢查並不符合我們的習慣,例如 flake8 預設一行的最大字元數是 79 個,超過就會顯示波浪線提示你程式碼太長了。

79 個字元實在是太短了,我們可以把它改長一點,增加如下配置,把最大長度設為 128 個字元。

"python.linting.flake8Args": ["--max-line-length=128"],