使用 VS Code 進行 Python 編程
(點擊
上方公眾號
,可快速關注)
編譯:linux中國-idea2act,英文:Clément Verna
https://linux.cn/article-9989-1.html
Visual Studio Code,簡稱 VS Code,是一個開源的文本編輯器,包含用於構建和調試應用程序的工具。安裝啟用 Python 擴展後,VS Code 可以配置成理想的 Python 開發工作環境。本文將介紹一些有用的 VS Code 擴展,並配置它們以充分提高 Python 開發效率。
如果你的計算機上還沒有安裝 VS Code,可以參考文章
在 Fedora 上使用 VS Code
(鏈接:https://fedoramagazine.org/using-visual-studio-code-fedora/)來安裝。
在 VS Code 中安裝 Python 擴展
首先,為了更方便地在 VS Code 中進行 Python 開發,需要從 VS Code 擴展商店中安裝 Python 擴展。
Python 擴展安裝完成後,就可以開始配置 Python 擴展了。
VS Code 通過兩個 JSON 文件管理設置:
一個文件用於 VS Code 的全局設置,作用於所有的項目
另一個文件用於特殊設置,作用於單獨項目
可以用快捷鍵
Ctrl+,
(逗號)打開全局設置,也可以通過
文件 -> 首選項 -> 設置
來打開。設置 Python 路徑
您可以在全局設置中配置
python.pythonPath
使 VS Code 自動為每個項目選擇最適合的 Python 解釋器。
//
將設置放在此處以覆蓋默認設置和用戶設置。//
Path to
Python
,
you can
use
a
custom version of Python by modifying this setting to include the full
path
.
{
"python.pythonPath"
:
"${workspaceRoot}/.venv/bin/python"
,
}
這樣,VS Code 將使用虛擬環境目錄
.venv
下項目根目錄中的 Python 解釋器。
使用環境變數
默認情況下,VS Code 使用項目根目錄下的
.env
文件中定義的環境變數。 這對於設置環境變數很有用,如:
PYTHONWARNINGS
=
"once"
可使程序在運行時顯示警告。
可以通過設置
python.envFile
來載入其他的默認環境變數文件:
//
Absolute path
to
a
file
containing environment variable
definitions
.
"python.envFile"
:
"${workspaceFolder}/.env"
,
代碼分析
Python 擴展還支持不同的代碼分析工具(pep8、flake8、pylint)。要啟用你喜歡的或者正在進行的項目所使用的分析工具,只需要進行一些簡單的配置。
擴展默認情況下使用 pylint 進行代碼分析。你可以這樣配置以使用 flake8 進行分析:
"python.linting.pylintEnabled"
:
false
,
"python.linting.flake8Path"
:
"${workspaceRoot}/.venv/bin/flake8"
,
"python.linting.flake8Enabled"
:
true
,
"python.linting.flake8Args"
:
[
"--max-line-length=90"
],
啟用代碼分析後,分析器會在不符合要求的位置加上波浪線,滑鼠置於該位置,將彈窗提示其原因。注意,項目的虛擬環境中需要安裝有 flake8,此示例方能有效。
格式化代碼
可以配置 VS Code 使其自動格式化代碼。目前支持 autopep8、black 和 yapf。下面的設置將啟用 「black」 模式。
/
/
Provider
for
formatting
.
Possible options
include
"autopep8"
,
"black"
,
and
"yapf"
.
"python.formatting.provider"
:
"black"
,
"python.formatting.blackPath"
:
"${workspaceRoot}/.venv/bin/black"
"python.formatting.blackArgs"
:
[
"--line-length=90"
],
"editor.formatOnSave"
:
true
,
如果不需要編輯器在保存時自動格式化代碼,可以將
editor.formatOnSave
設置為
false
並手動使用快捷鍵
Ctrl + Shift + I
格式化當前文檔中的代碼。 注意,項目的虛擬環境中需要安裝有 black,此示例方能有效。
運行任務
VS Code 的一個重要特點是它可以運行任務。需要運行的任務保存在項目根目錄中的 JSON 文件中。
運行 flask 開發服務
這個例子將創建一個任務來運行 Flask 開發伺服器。 使用一個可以運行外部命令的基本模板來創建新的工程:
編輯如下所示的
tasks.json
文件,創建新任務來運行 Flask 開發服務:
{
//
See
https
://
go
.
microsoft
.
com
/
fwlink
/
?
LinkId
=
733558
//
for
the documentation about the
tasks
.
json
format
"version"
:
"2.0.0"
,
"tasks"
:
[
{
"label"
:
"Run Debug Server"
,
"type"
:
"shell"
,
"command"
:
"${workspaceRoot}/.venv/bin/flask run -h 0.0.0.0 -p 5000"
,
"group"
:
{
"kind"
:
"build"
,
"isDefault"
:
true
}
}
]
}
Flask 開發服務使用環境變數來獲取應用程序的入口點。 如
使用環境變數
一節所說,可以在
.env
文件中聲明這些變數:
FLASK_APP
=
wsgi
.
py
FLASK_DEBUG
=
True
這樣就可以使用快捷鍵
Ctrl + Shift + B
來執行任務了。
單元測試
VS Code 還支持單元測試框架 pytest、unittest 和 nosetest。啟用測試框架後,可以在 VS Code 中單獨運行搜索到的單元測試,通過測試套件運行測試或者運行所有的測試。
例如,可以這樣啟用 pytest 測試框架:
"python.unitTest.pyTestEnabled"
:
true
,
"python.unitTest.pyTestPath"
:
"${workspaceRoot}/.venv/bin/pytest"
,
注意,項目的虛擬環境中需要安裝有 pytest,此示例方能有效。
【關於投稿】
如果大家有原創好文投稿,請直接給公號發送留言。
① 留言格式:
【投稿】+《 文章標題》+ 文章鏈接
② 示例:
【投稿】
《不要自稱是程序員,我十多年的 IT 職場總結》:
http://blog.jobbole.com/94148/
③ 最後請附上您的個人簡介哈~
看完本文有收穫?請轉
發分享給更多人
關注「P
ython開發者」,提升Python技能
TAG:Python開發者 |