1.5. 缩近代码

Python函数没有显示的 beginend,没有大括号,可以标识函数从哪里开始,又在哪里结束。唯一的分隔符是通过一个冒号(“:”)和代码本身的缩近。

例 1.6. 缩近 buildConnectionString 函数


def buildConnectionString(params):
    """Build a connection string from a dictionary of parameters.

    Returns string."""
    return ";".join(["%s=%s" % (k, v) for k, v in params.items()])

代码块(函数,if 语句,for 循环,等等)通过它们的缩近来定义。缩近表示块的开始,取消缩近表示块结束,不存在明显的括号,大括号,或关键字。这就意味着空白是重要的,并且要一致。在这个例子中,函数代码(包括文档字符串)缩近了4个空格。不一定非要是4个,只要一致就可以了。第一行没有缩近,则在函数之外。

在经过初期的一些反对和象对待Fortran一样的挖苦之后,你将会心平气和地对待它,开始理解它的好处。缩近一个主要的好处是,所有的Python程序看上去都差不多,因为缩近是语言的要求而不是风格问题。这样就更容易阅读和理解别人的Python代码。

Note
Python使用硬回车将语句分开,以冒号和缩近代码块分开。C++和Java使用分号来分开语句,使用花括号来分开代码块。

进一步阅读