Black 代码风格

Black 是一个符合 PEP 8 规范的、有自己风格的代码格式化工具。

虽然一直以来保持版本间风格不变都是我们的目标,但 Black 代码风格并非一成不变。它会不断发展以适应 Python 语言的新特性,偶尔也会根据用户反馈进行调整。在 Black 代码风格 中提出的大型风格偏好不太可能发生变化,但根据下面列出的稳定性策略,次要风格方面和细节可能会发生变化。正在进行的风格考虑在 GitHub 上以 style 问题标签进行跟踪。

稳定性策略

以下策略适用于 Black 代码风格,在 Black 的非预发布版本中。

  • 如果代码已使用 Black 格式化,那么使用相同选项在同一历年的其他任何版本中格式化时,它将保持不变。

    这意味着项目可以安全地使用 black ~= 22.0,而无需担心格式化更改会在 2022 年破坏他们的项目。我们仍然可能会修复 Black 在某些代码上崩溃的错误,并进行其他不会影响格式化的改进。

    在极少数情况下,我们可能会进行影响以前未使用 Black 格式化的代码的更改。例如,我们曾经遇到过意外删除一些注释的错误。这种错误可以在不破坏稳定性策略的情况下修复。

  • 新历年的第一个版本可能包含格式化更改,但这些更改将尽可能减少。这是为了允许使用更新的 Python 语言语法实现改进的格式,以及由于格式化逻辑的改进而带来的改进。

  • --preview--unstable 标记不适用此策略。使用这些标记传递到 Black 时,输出的稳定性没有保证。它们旨在允许对 Black 代码风格的建议更改进行试验。一年的最后 --preview 风格应该与下一年的稳定风格非常接近,但我们可能始终进行更改。

当前和未来风格的文档可以在以下位置找到