class def in Python 后的空格

Whitespace after class def in Python

最近有人指出,在编写 Python 代码时,我倾向于在 class 定义和 class 主体之间放置一个空行。

例如

class A(object):

    def f(self):
        blah()

我注意到 flake8 没有指出这是一个问题。 PEP 风格指南似乎没有涵盖这种情况,或者充其量只是让这种情况有待解释 (https://www.python.org/dev/peps/pep-0008/#blank-lines)。

想知道是否有人知道是否有偏好,或者是否可以使用和不使用空行。

干杯

https://en.wikipedia.org/wiki/Python_syntax_and_semantics#Class_and_static_methods

我同意 JPeroutek 关于个人偏好的观点,但如果您的代码特别长,您可能需要在 类 和方法之间去掉那些额外的空格。我使用空格是为了便于阅读,但有些人不这样做。最后都是个人喜好。

在 PyCharm 中,class 声明周围空格的默认设置为 1(这可能表示约定)。但如前所述,偏好在这里占主导地位。