Python 函數沒有明顯的 begin 和 end,沒有標明函數的開始和結束的花括號。唯一的分隔符是一個冒號 (:),接着代碼本身是縮進的。
例如:
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語句,While語句,For循環等。
代碼塊就是可作為可執行單元的一段Python程序文本;模塊、函數體和類定義都是代碼塊。不僅如此,每一個交互腳本命令也是一個代碼塊;一個腳本文件也是一個代碼塊;一個命令行腳本也是一個代碼塊。
開始縮進表示塊的開始,取消縮進表示塊的結束。不存在明顯的括號,大括號或關鍵字。這就意味着空白是重要的,並且要一致。在這個例子中,函數代碼 (包括 doc string) 縮進了 4 個空格。不一定非要是 4 個,只要一致就可以了。沒有縮進的第一行則被視為在函數體之外。
例如:
def fib(n):
print 'n =', n
if n > 1:
return n * fib(n - 1) else:
print 'end of the line' return 1
Python 使用硬回車來分割語句,冒號和縮進來分割代碼塊,而不使用分號和花括號。
