如何防止 vscode 中的 python 扩展名自动插入 space 以外的新字符?

How to prevent python extension in vscode to automatically insert new characters except space?

仅启用 python(v2020.6.91350)material icon theme 扩展程序, 这是我保存前的代码:

flipkart_modified_url = flipkart_base_url + urllib.parse.urlencode({"q": search_item})

保存文件后,我的行变为:

flipkart_modified_url = flipkart_base_url + \
urllib.parse.urlencode({"q": search_item})

为什么 \ 会自动插入到代码中?而且我不明白代码如何仍然使用错误的语法,我不想禁用扩展,有什么方法可以真正防止这种情况发生

主题似乎在保存时将您的设置更改为自动格式化。我建议您下载其他主题,例如 VSCode Icons。如果您坚持使用此主题,请按照以下步骤关闭自动格式化(风险:您将不得不通过 Alt+Shift+F 手动格式化您的代码):

  1. 检查您的默认设置(Ctrl+Shif+P, Preferences: Open Default Settings (Json))
  2. 搜索(Ctrl+F)editor.formatOnSave看是不是"editor.formatOnType": true .如果是,请按照以下步骤操作:
  • Ctrl+Shif+P,首选项:打开用户设置 (Json)

  • 添加这一行:

    "editor.formatOnSave": 假

    注意:不要忘记在上一行末尾添加','。 Edit settings like this

  1. Ctrl+S保存json文件,查看问题是否解决

'\' -> This called Explicit line joining: 两个或多个物理行可以使用反斜杠字符 (\) 连接成逻辑行。

它是根据您提供的格式应用的。如果你没有设置它,它默认为 'autopep8',你可以在 'defaultSettings.json' 中找到此设置,它是由 'Python' 扩展名设置的。您可以在输出面板 -> Python 通道中查看 'Python' 扩展如何格式化您的代码。当然,你需要安装 'autopep8' 包。

如果您想更改 autopep8 的行为,而不是将代码截断为行,您可以将此添加到 settings.json 文件: “python.formatting.autopep8Args”:[ “--最大行长”, "120", ], 详情请参考autopep8 docs