为VS Code配置Python代码格式化插件yapf
文章目录
前言
笔者在使用VS Code之前,一直是通过Sublime Text编辑器在写Python代码。很长一段时间都不知道还有插件系统可以用。后来切换到VS Code以后,发现各种神奇的插件层出不穷,遂开始研究起来。本文提到的yapf就是其中之一。
yapf 是谷歌开源的一个用于格式化 Python 代码的工具,可以一键美化代码。支持两种规范:PEP8
和 Google Style
。
通常进行Python代码规范配置,包含下面3类工具:
-
代码格式: pep8, flake8
-
静态检查: yapf
-
自动排序import package: isort
我们一起来看看具体如何配置。
先决条件
- 已安装VS Code,并配置Python语言支持
- 已安装Conda用于环境管理
部署步骤
1. 使用conda在当前环境下安装代码规范配置工具
conda install yapf flake8 isort
注意:也可以使用pip3进行安装,鉴于本身使用conda进行环境管理,此处以conda安装作为示例
2. 在VS Code设置中设置启用 yapf
:
- 在 VS Code 左下角点击设置按钮,选择 “Settings”
- 在设置界面的右上角,转到
settings.json
- 在
settings.json
里进行设置 "python.formatting.provider": "yapf"
3. 配置文件示例:
{
"workbench.colorTheme": "Solarized Dark",
"[python]": {
"editor.formatOnType": true,
"editor.codeActionsOnSave": {
"source.organizeImports": true
}
},
"terminal.integrated.inheritEnv": false,
"files.trimTrailingWhitespace": true,
"python.linting.flake8Enabled": true,
"python.linting.flake8Args": [
"--max-line-length=128"
],
"python.linting.pylintEnabled": false,
"python.formatting.provider": "yapf",
"python.formatting.yapfArgs": [
"--style",
"{column_limit: 128}"
],
"editor.formatOnSave": true,
"editor.formatOnPaste": true,
"files.autoSave": "onFocusChange"
}
4. 完成设置后,即可对代码格式进行自动格式化。
设置中已经定义,如果保存或者进行代码粘贴时,都会自动进行代码格式化。此外,如果希望手动进行格式化,可以使用如下快捷键:
Mac: Shift
+ Option
+ F
Windows:Shift
+ Alt
+ F
Linux:Ctrl
+ Shift
+ `I
5. 实际使用效果:
总结
自动规范检查代码是十分实用的技巧。对于一些细节问题都能自动完成修正(譬如=
后面自动增加空格),这对养成良好的代码习惯很有帮助。当遇到语法错误时,也能清晰地提醒用户在什么地方出现问题。建议每位Python语言的初学者,都进行配置。