Python 中可以在一個函數中嵌套另外一個函數。這種函數嵌套的方式,可以有效地控制程序的結構和邏輯,使得程序的可讀性和重用性都得到了提高。接下來,我們來看看 Python 中函數嵌套的具體用法。
在 Python 中,函數嵌套的語法非常簡單,只需要在函數內部定義即可。例如,我們定義一組輔助函數來計算一個數組的所有元素的平方和:
def square(x): return x * x def sum_of_squares(arr): result = 0 for item in arr: result += square(item) return result
在上面的例子中,我們定義了兩個函數,其中 square 函數用于計算一個數的平方,sum_of_squares 函數用于計算一個數組的所有元素的平方和。注意到,在 sum_of_squares 函數內部調用了 square 函數來計算每個元素的平方。這種函數嵌套的方式,使得程序變得更加清晰和易于理解。
在 Python 中,函數嵌套可以嵌套多層。例如,我們可以定義一個高階函數,該函數返回一個函數,用于計算一個數的 n 次方:
def power(n): def inner(x): return x ** n return inner square = power(2) print(square(3)) # 輸出 9 cube = power(3) print(cube(3)) # 輸出 27
在上面的例子中,我們定義了一個 power 函數,該函數返回一個函數 inner,用于計算一個數的 n 次方。在 main 函數中,我們通過調用 power 函數來獲得 square 和 cube 函數,分別用于計算一個數的平方和立方。注意到,在 power 函數內部定義了一個函數 inner,用于計算一個數的 n 次方。這種函數嵌套的方式,可以使得程序更加簡潔和靈活。