在 VS Code 里写 Python,代码规范是个头疼事。好在有成熟的格式化工具能帮上忙,下面列了主流的几个方案,大家按需取用。
| 工具名称 | 核心特点 | 风格理念 | 推荐适用场景 |
|---|---|---|---|
| Black | 开箱即用,几乎无需配置;强制统一的代码风格,可预测性强。 | '无妥协'的格式化器。它决定格式,讨论空间小,保证所有代码风格一致。 | 团队协作项目;希望零配置快速上手的开发者;追求极简和一致性。 |
| autopep8 | 基于 PEP 8 规范,主要修复代码风格问题(如缩进、空格)。 | 相对保守,专注于修复而非重新排版。 | 希望代码严格遵循 PEP 8;对现有代码进行温和的格式化修复。 |
| yapf | 高度可定制,可以模仿多种代码风格;格式化策略更'激进',会重新排版代码。 | '自成风格'。目标是通过调整代码来达到最佳可读性,而非严格遵循某一规范。 | 需要高度自定义格式化规则;项目有特殊的代码风格要求。 |
环境准备与安装
准备工作其实很简单,先把对应的包装进你的 Python 环境。以使用最广的 Black 为例:
pip install black
VS Code 配置步骤
VS Code 这边,直接去扩展商店搜 Black Formatter 装上就行。官方 Python 扩展也自带支持,不用额外折腾。
关键设置就在编辑器里。按 Ctrl+, 打开设置面板,搜索 format on save 并勾选 Editor: Format On Save。这样每次存盘就自动理顺代码了,省得手动点。
再指定一下默认格式器,在设置里搜 default formatter,为 Python 语言选择 ms-python.black-formatter。
完成以上配置后,当你编辑或保存一个 Python 文件时,VS Code 就会自动调用 Black 来格式化你的代码了。
进阶技巧与避坑
-
手动格式化:除了自动保存,也可以随时手动操作。Windows 下快捷键是
Shift + Alt + F,Mac 上是Shift + Option + F。 -
自定义行宽:Black 默认行宽是 88 字符,但有些团队习惯 100 或 120。可以在 VS Code 设置中追加参数:
"python.formatting.blackArgs": ["--line-length", "100"] -
解决冲突:如果同时装了多个格式化工具或 Linter(比如 flake8),可能会打架。确定主力用 Black 的话,建议把其他工具的开关关掉:

