Python 函数的嵌套指的是在一个函数内部定义另一个函数,被定义的函数可以被包含它的函数调用。这种嵌套的函数称为内部函数或嵌套函数。
Python 函数嵌套的基本语法结构如下:
def outer_func():
# 外部函数
def inner_func():
# 内部函数
pass
# 调用内部函数
inner_func()
在上面的代码示例中,我们定义了一个外部函数 outer_func
,它包含一个内部函数 inner_func
。当 outer_func
被调用时,它会自动地调用其内部函数 inner_func
,并且 inner_func
只能被 outer_func
内部的代码所调用,外部的代码无法使用它。
下面是一个具体的例子,我们定义了一个函数 multiplier
,它返回一个嵌套函数 multiply
,该嵌套函数用于将一个数乘以一个给定的因子:
def multiplier(factor):
def multiply(n):
return n * factor
return multiply
double = multiplier(2)
triple = multiplier(3)
print(double(5))
print(triple(5))
在上面的代码中,我们首先定义了一个函数 multiplier
,它接受一个参数 factor
,并返回一个嵌套函数 multiply
。然后我们使用 multiplier
分别创建了 double
和 triple
两个函数,它们的因子分别是 2 和 3。
在最后两行代码中,我们分别调用了函数 double
和 triple
,并传递了参数 5。我们可以看到,double(5)
返回的结果是 10,而 triple(5)
返回的结果是 15。
这个例子展示了函数嵌套的一种典型用法,即使用内部函数来创建一系列具有相似行为的函数。