if语句是否应该用空行包围以跟随PEP8?

时间:2017-11-03 22:27:06

标签: python pep8

我已阅读the blank line section in pep8。它说我们应该用空行包围顶级函数,但它没有说明if语句。

我已经完成了对Python中顶级内容的深入挖掘,而且似乎没有任何缩进。这是否意味着if语句应该用空行包围? if语句是否被认为是函数?

我无法找到关于此问题的堆栈溢出。

1 个答案:

答案 0 :(得分:0)

"""
my cool and interesting program!
"""

import this_module
import that_module
import another_module


def procedure_to_do_this(*args):
    if args:
        print("the caller says %s!" % args[0])
    elif not args:
        print("the caller is too shy to say anything ;c")
    else:
        print("if you've reached this point, there's no turning back")

    return something


procedure_to_do_this()

你是如何形成if / elif / else结构的,但是在大多数情况下,对于你来说这个结构是否符合代码的其余部分是主观的,当然你可以改变它你觉得其中一个条件子句中的代码太多而且你想要区分条件,你可以在一个条件结束后添加一个额外的换行符,例如:

if this:
    <a lot of code>
    <a lot of nice code>
    <a lot of long code>
<newline>
elif that:
    <a lot of other code>

等等。

永远记住,PEP8是一个简单的造型指南[line],它绝不是指示代码的整体设计,因为它对于人们认为好的造型在有好的时候看起来是主观的。特定代码。

并非所有代码在某种风格中看起来都很好,所以这就是为什么它是一个指南而不是Python严格执行并已实现到解释器中的东西。