vscode使用black对python代码进行格式化

发布于:2025-09-04 ⋅ 阅读:(19) ⋅ 点赞:(0)

        vscode中使用black formatter的插件对python的代码进行格式化,自动对齐python的代码,使排版更加工整。

1. 安装black的包

         进入到对应的conda环境中,使用pip安装black的包

pip install black

2. 安装vscode的插件

        在vscode的扩展中搜索black formatter的插件,并安装

3. 在vscode中进行配置

        在需要配置的工程中,会有个.vscode的文件夹,里面有个setting.json的配置文件,若是没有就自己新建一个,在里面输入以下内容:

{
    "python.formatting.provider": "black",
    "editor.formatOnSave": true,
    "editor.defaultFormatter": "ms-python.black-formatter",
    "python.formatting.blackArgs": ["--line-length", "100"],
    "editor.wordWrap": "off",

    "python.linting.flake8Enabled": false,
    "python.formatting.autopep8Enabled": false,
    "python.formatting.yapfEnabled": false
}

        其中,配置参数的说明如下:

"editor.formatOnSave": true,  // 启用保存时自动格式化

"python.formatting.blackArgs": ["--line-length", "100"]   //自定义行宽,这句话我感觉没什么用,不管设置多少,到了一定的宽度都会自动换行

//解决与其他工具的冲突,例如flake8、autopep8、yapf
"python.linting.flake8Enabled": false,
"python.formatting.autopep8Enabled": false,
"python.formatting.yapfEnabled": false

        配置完成之后,按ctrl+s会自动格式化,使整体保持一致的代码风格。

4. 说明

        因为该配置是在指定的工程下的setting.json中完成的,格式化的功能也只会在vscode中打开该工程的时候生效。

        该black插件的有些格式化的风格,我也不喜欢,例如一个print的语句,若是过长的时候,会对括号进行换行,看起来很冗余,但是好像也没有地方进行设置,修改该风格,只能先这样了。

参考博客:

新版VSCode格式化Python文件的方法_vscode python格式化-CSDN博客