Python自动格式化会增加额外的空间

时间:2019-04-20 16:10:09

标签: python visual-studio-code pep8 autopep8

我所面临的问题与我的Python文件在Visual Studio Code中自动格式化有关。

我喜欢在Python中使用制表符,因为这样可以更轻松地保持一致并更快地键入代码。但是,当我在Visual Studio Code上保存时,保存时的自动格式会为每行增加一个额外的空间。这意味着python脚本可以工作,但结构看起来却很简单。

我尝试禁用美化功能,但它仍然会发生。我不认为更漂亮的自动格式格式化python反正。我尝试检查设置JSON文件,但我也不认为也没有任何内容。

Settings.json

{
    "color-highlight.markerType": "dot-before",
    "editor.detectIndentation": false,
    "editor.formatOnSave": true,
    "editor.tabSize": 3,
    "liveServer.settings.donotShowInfoMsg": true,
    "prettier.tabWidth": 3,
    "python.pythonPath": "C:\\Users\\mtapi\\Anaconda3\\python.exe",
    "window.zoomLevel": 1,
    "python.condaPath": "C:\\Users\\mtapi\\Anaconda3\\Scripts\\conda.exe",
    "terminal.integrated.shell.windows": "C:\\WINDOWS\\System32\\cmd.exe",
    "editor.insertSpaces": false,
    "prettier.useTabs": true,
    "python.linting.pylintEnabled": true,
    "python.linting.enabled": true,
    "python.linting.pep8Enabled": true,
    "editor.mouseWheelZoom": true,
    "editor.fontSize": 15,
    "workbench.iconTheme": "vscode-icons",
    "workbench.colorTheme": "Default High Contrast"
}

下面是一个示例脚本,在保存格式之前

enter image description here

这是保存后发生的情况:

enter image description here

以前从未发生过。让我知道是否有任何混淆或需要更多信息

1 个答案:

答案 0 :(得分:0)

看起来您的编辑器中的某些内容配置为具有4个空格,而不是3个缩进。

但是,如果您想遵循PEP8,建议您使用4个空格作为缩进大小,这是提案本身建议的(而不是制表符):https://www.python.org/dev/peps/pep-0008/#indentation

话虽如此,我猜想这与这些行有关,因为它们告诉编辑器使用PEP8,而PEP8要求提供4个空格:

    "python.linting.pylintEnabled": true,
    "python.linting.enabled": true,
    "python.linting.pep8Enabled": true,

最后,我注意到的最后一件事:您的“之前”脚本的缩进大小不一致,print(f'{A} {B} {C} {D}')行的缩进大小与其余代码不同。