推荐的 Python 代码格式化插件
Black Formatter
Black 是 Python 官方推荐的格式化工具,遵循严格的代码风格规范。安装后可通过快捷键或右键菜单快速格式化代码。支持自动调整缩进、换行、引号等。
autopep8
基于 PEP 8 规范,自动修复代码格式问题。可配置性强,支持忽略特定规则。适合需要灵活调整风格的项目。
yapf
Google 开发的格式化工具,提供两种风格模式:pep8 和 google。独特之处在于能根据代码结构智能调整格式,而非简单套用规则。
安装与配置方法
通过 VS Code 扩展市场搜索插件名称直接安装。部分插件需额外步骤:
- Black 需执行
pip install black - autopep8 需执行
pip install autopep8
配置示例(settings.json):
{ "python.formatting.provider": "black", "[python]": { "editor.defaultFormatter": "ms-python.black-formatter" } }高级使用技巧
设置保存时自动格式化:
{ "editor.formatOnSave": true, "editor.formatOnPaste": true }创建自定义规则(以 yapf 为例):
{ "python.formatting.yapfArgs": ["--style", "{based_on_style: pep8, indent_width: 4}"] }https://www.zhihu.com/zvideo/1992045161551770108/
https://www.zhihu.com/zvideo/1992045161916686583/
https://www.zhihu.com/zvideo/1992045162159965552/
https://www.zhihu.com/zvideo/1992045158800307709/
https://www.zhihu.com/zvideo/1992045158741582144/
https://www.zhihu.com/zvideo/1992045158057923734/
https://www.zhihu.com/zvideo/1992045156921271826/
https://www.zhihu.com/zvideo/1992045157269381550/
https://www.zhihu.com/zvideo/1992045156979998916/
https://www.zhihu.com/zvideo/1992045157659477112/
https://www.zhihu.com/zvideo/1992045155793016685/
https://www.zhihu.com/zvideo/1992045149161804327/
https://www.zhihu.com/zvideo/1992045156048848166/
https://www.zhihu.com/zvideo/1992045155356779116/
https://www.zhihu.com/zvideo/1992045155570713547/
https://www.zhihu.com/zvideo/1992045153695839232/
https://www.zhihu.com/zvideo/1992045151649019075/
https://www.zhihu.com/zvideo/1992045150516561676/
https://www.zhihu.com/zvideo/1992045149031789868/
https://www.zhihu.com/zvideo/1992045148180329749/
https://www.zhihu.com/zvideo/1992045144938141563/
https://www.zhihu.com/zvideo/1992045145047209034/
https://www.zhihu.com/zvideo/1992045144577434297/
https://www.zhihu.com/zvideo/1992045144577417609/
https://www.zhihu.com/zvideo/1992045144413848693/
https://www.zhihu.com/zvideo/1992045144057328246/
https://www.zhihu.com/zvideo/1992045142559961438/
https://www.zhihu.com/zvideo/1992045141423318992/
https://www.zhihu.com/zvideo/1992045142106981516/
https://www.zhihu.com/zvideo/1992045141603680294/
https://www.zhihu.com/zvideo/1992045142077616259/
https://www.zhihu.com/zvideo/1992045141683360287/
https://www.zhihu.com/zvideo/1992045139003212988/
https://www.zhihu.com/zvideo/1992045131092751090/
https://www.zhihu.com/zvideo/1992045131013039878/
https://www.zhihu.com/zvideo/1992045129670874562/
https://www.zhihu.com/zvideo/1992045129435981263/
https://www.zhihu.com/zvideo/1992045130069349231/
https://www.zhihu.com/zvideo/1992045129448563407/
https://www.zhihu.com/zvideo/1992045129134020162/
https://www.zhihu.com/zvideo/1992045126390928210/
https://www.zhihu.com/zvideo/1992045118757307229/
https://www.zhihu.com/zvideo/1992045119239632408/
https://www.zhihu.com/zvideo/1992045118174279484/
https://www.zhihu.com/zvideo/1992045113145313147/
https://www.zhihu.com/zvideo/1992045117473853699/
https://www.zhihu.com/zvideo/1992045115510908709/
https://www.zhihu.com/zvideo/1992045114772693468/
https://www.zhihu.com/zvideo/1992045114655262159/
https://www.zhihu.com/zvideo/1992045114458128410/
https://www.zhihu.com/zvideo/1992045114906928807/
https://www.zhihu.com/zvideo/1992045114311329463/
https://www.zhihu.com/zvideo/1992045112927203806/
https://www.zhihu.com/zvideo/1992045111933154867/
https://www.zhihu.com/zvideo/1992045110762952301/
https://www.zhihu.com/zvideo/1992045110842644184/
https://www.zhihu.com/zvideo/1992045111199154622/
https://www.zhihu.com/zvideo/1992045110045730624/
插件对比
| 插件 | 特点 | 适用场景 |
|---|---|---|
| Black | 不可配置,一致性极高 | 团队强制统一风格 |
| autopep8 | 可逐条禁用PEP8规则 | 遗留代码迁移 |
| yapf | 智能重排复杂表达式 | 科学计算等长代码场景 |
故障排除
格式化失效时检查:
- Python 解释器路径是否正确
- 插件是否与当前 VS Code 版本兼容
- 项目虚拟环境中是否安装了对应包
快捷键冲突可重置为:
- Windows/Linux:
Shift + Alt + F - macOS:
Shift + Option + F