如何在Visual Studio Code中自动缩进Python代码?

20
我正在Linux上使用Visual Studio Code (不是Visual Studio),但无法找到如何在Python中打开自动缩进的方法。我已在首选项中查找过,花了一些时间在Google上搜索,但没有找到任何方法。请问有人知道怎么做吗?
3个回答

30

在 VS Code 中,您可以在多个地方设置缩进:

  • 常规/工作区设置(底部栏),
  • 用户设置,
  • 语言格式化程序设置。

当使用 Python 时,无论您设置了什么样的设置,它们都会被 autopep8 语言格式化程序设置的 autopep8Args 值覆盖,该值具有缩进大小为 4。

默认情况下,autopep8 用作 VS Code Python 格式化程序,但也有其他格式化程序,如 yapf

要更新此格式化程序的缩进大小,请在用户设置中搜索 "python.formatting.autopep8Args" 并将其设置为:["--indent-size=2"]。

"python.formatting.autopep8Args": ["--indent-size=2"],

1
我将这行代码添加到了VS Code用户设置中,但它没有生效,autopep8仍然将所有缩进都转换成4个空格。 - Logan Yang
我正在使用VS Code中的Python扩展,其中包含了autopep8。不确定为什么这个设置在这种情况下不起作用,欢迎任何建议。 - Logan Yang
@LoganYang - 我不确定你是否将缩进转换为空格视为问题。如果是这样,你在Python中永远不应该使用制表符进行缩进。始终使用空格。这是PEP8规范,并且会为你节省很多麻烦。毫无疑问,格式化程序会因此转换制表符。 - Kevin Buchs

0

Visual Studio Code目前对Python的支持还不够充分(但是),除了语法高亮和每个文件的智能感知(意味着它会为当前文件中找到的符号提供建议)之外,没有太多的支持。

我愿意打赌,Visual Studio Code团队最终会增加他们对Python在Visual Studio Code中的支持,并且随着这一点,他们可能会添加自动缩进的支持。

同时,也许值得尝试这个Visual Studio Code扩展程序,它旨在将更好的Python支持添加到Visual Studio Code中。

该扩展程序确实为Python添加了自动缩进,以及许多其他功能。

祝编写脚本愉快!


0

我使用autopep8自动格式化Python代码,VSCode可以使用它。可以通过创建配置文件$HOME/.config/pep8轻松配置选项,如制表符大小等。

以下是该文件的示例:

[pep8]
indent-size = 2
max-line-length = 100

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接