【问题标题】:Why is Python strict about indentation? [closed]为什么 Python 对缩进很严格? [关闭]
【发布时间】:2014-10-12 19:40:55
【问题描述】:

这个问题来自this Stack Overflow question。为什么 Python 设计为使用正确的缩进空格或制表符?这样一来,是不是故意为所欲为?

【问题讨论】:

标签: python indentation


【解决方案1】:

缩进在 Python 中是必不可少的;它以类似 C 的语法替换大括号、分号等。

考虑这段代码sn-p,例如:

def f(x):
    if x == 0:
        print("x is zero")
        print("where am i?")

如果不是缩进,我们将无法指出第二个print 语句属于哪个代码块。是在if 语句下、f 函数下还是在文档中单独存在?

【讨论】:

    【解决方案2】:

    制表符没有固定宽度,因此 Python 无法知道制表符计为多少个空格。

    【讨论】:

    • 不完全正确。 Python 有一个precise definition 说明如何将制表符解释为一系列空格。在实践中,正确混合的空格和制表符不太可能看起来正确,这就是为什么强烈建议选择制表符或(最好)空格并坚持使用的原因。
    猜你喜欢
    • 2010-11-10
    • 2011-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-23
    • 1970-01-01
    • 2020-07-25
    • 2018-03-20
    相关资源
    最近更新 更多