我经常用反斜杠换行符编写 Spark 作业,如下所示:
result = table \
.select(
'a',
'b'
) \
.filter(...)
它可读且美观。
但是当我在 PyCharm 中使用自动格式化时,它会破坏缩进,然后代码开始看起来像这样:
result = table \
.select(
'a',
'b'
) \
.filter(...)
这对我来说是不想要的。
有什么方法可以配置自动格式化以产生第一个结果?我尝试了不同的组合,但没有找到任何东西。
谢谢!
预期结果是缩进的右括号。我尝试了 PyCharm 代码样式设置选项卡中的所有设置。
PyCharm 的内置格式化程序不提供对此特定问题的细粒度控制。但是,您可以使用外部格式化程序,例如
black
,它遵循 PEP 8,但旨在提高可读性。
black
:pip install black
black
:Preferences > Tools > External Tools > +
或者,您可以禁用特定代码块的自动格式化:
# fmt: off
result = table \
.select(
'a',
'b'
) \
.filter(...)
# fmt: on
如果您使用
black
并在不希望格式化的块周围添加 # fmt: off
和 # fmt: on
,则此方法有效。