新版VSCode格式化Python文件的方法
·
新版vscode对python代码自动格式化与老版本存在较大差异,之前的flake8、autopep8、yapf无法使用,下面介绍使用black formatter插件配置。
注意:black会根据配置的最大列数格式化时强制换行,而autopep8不会改变用户设置的换行,从这一点来说,autopep8更加友好一些,因为有的代码自动换行会把整体代码修改的太多。
在新版 VS Code 中配置 Black 格式化器的步骤如下:
1. 安装 Black
首先确保已安装black:
pip install black
2. 安装 VS Code 插件
在 VS Code 扩展商店搜索并安装 “Black Formatter” 官方插件。
3. 配置默认格式化器
打开 VS Code 设置(JSON 格式),添加以下配置:
{
"python.formatting.provider": "black",
"editor.formatOnSave": true, // 启用保存时自动格式化
"editor.defaultFormatter": "ms-python.black-formatter"
}
有的版本第一行可能无法生效,可以改为:
python.defaultFormatter": "ms-python.black",
4. 自定义 Black 参数(可选)
如需自定义参数(如行宽),可在settings.json中添加:
{
"python.formatting.blackArgs": ["--line-length", "100"]
}
5. 解决与其他工具的冲突
禁用冲突的格式化工具(flake8、autopep8、yapf):
{
"python.linting.flake8Enabled": false,
"python.formatting.autopep8Enabled": false,
"python.formatting.yapfEnabled": false
}
6. 验证配置
打开 Python 文件
使用快捷键Shift+Alt+F手动格式化
或保存文件时自动格式化
常见问题
路径问题:若 Black 无法找到,需指定路径:
{
"python.formatting.blackPath": "/path/to/black"
}
与 Flake8 冲突:可配置 Flake8 忽略 Black 处理的规则:
# .flake8
[flake8]
extend-ignore = E203, W503 # Black默认处理的规则
配置完成后,VS Code 将使用 Black 格式化 Python 代码,保持一致的代码风格。
7. 设置完成
回到Python文件中,'ctrl+S’保存文件,会看到格式化已生效。
更多推荐

所有评论(0)