Python语法和作为子项的顺序步骤的易读性

时间:2010-01-14 18:38:49

标签: python syntax

我喜欢Python的空白格式和易读性。但是,你能否,或者是否存在一种划分不缩进代码块的通用/标准方法,即不属于嵌套循环?

我有一个属于主标题的过程的两个部分。像步骤2这样的东西有2.1和2.2部分。

到目前为止评论我有类似的东西:

# Section 2
<code>
# Section 2.1
<code>
# Section 2.2
<code>

但我更喜欢这样的东西:

# Section 2
<code>
    # Section 2.1
    <code>
    # Section 2.2
    <code>

2.12.2都不是子循环,我知道这是非法的。它们只是顺序运行,但是属于2标题的逻辑步骤(对我而言)所以当我查看我的代码时,我知道它们是什么部分程序。

编码时如何处理这些情况?

6 个答案:

答案 0 :(得分:5)

将它们放在不同的功能中。

答案 1 :(得分:4)

你不应该在Python中使用长函数。把空白困境作为暗示。

答案 2 :(得分:3)

功能定义有什么问题?

def section1( ... ):

def section2( ... ):

def overall( ... ):
    section1()
    section2()

如果它太大而需要缩进,也许它太大了。

此外,您可以滥用with语句来“强制”缩进。

答案 3 :(得分:1)

您可以尝试将其拆分为多个功能:

def section2():
    section21()
    section22()

或类似的东西。我发现使用函数不仅是为了重用,而且在组织上使我的代码更易读和易于维护。如果函数需要共享大量数据,您可以考虑将它们作为类的方法。

答案 4 :(得分:1)

我在代码中使用注释来帮助我识别彼此之间的逻辑关系。如果我认为存在某种自然顺序,我可能会以某种方式重构我的代码以识别它,但我从不试图误用Python的缩进。这不是它的意思。它是语法而不是语义。

答案 5 :(得分:1)

我很惊讶您考虑使用这样的语言缩进代码,即使在允许它的语言中也是如此。您的团队成员对此有何看法?我发现缩进与块不对应的代码非常令人困惑。