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的语句,若是过长的时候,会对括号进行换行,看起来很冗余,但是好像也没有地方进行设置,修改该风格,只能先这样了。
参考博客: