9

我正在使用black==20.8b1.

我有一个很长的字符串,例如:

return f"{self.name}, a {adjective.to_name()} {kin_string}{self._type.to_name()} who works for the {target.get_relationship_target_string()}."

我跑:

$ black -l 80 . -t py38
All done! ✨  ✨
2 files left unchanged.

为什么字符串没有被包裹?我认为现在black支持包装字符串(基于github中的问题)。

4

2 回答 2

11

目前我们必须为其添加--experimental-string-processing标签。我认为在未来的版本中它将被设为 default

black -l 80 --experimental-string-processing file.py
于 2020-11-09T08:28:37.810 回答
7

目前,Black 不包装长字符串或长注释。你可以在他们的项目 GitHub中看到一个未解决的问题:

Black 目前不包装长字符串文字或合并恰好在同一行的字符串文字。[...] 这将需要修改 AST,这不是 100% 安全的,并且有一堆边缘情况需要处理。

于 2020-08-31T03:53:33.650 回答