def outer_function(x):
# 外部函数定义了一个变量 x
def inner_function(y):
# 内部函数可以访问外部函数的变量 x
return x + y
return inner_function
# 创建一个闭包,x 的值为 5
closure_example = outer_function(5)
# 调用闭包,传递参数 y 为 10
result = closure_example(10)
print(result) # 输出 15
outer_function
):接受一个参数 x
,并在内部定义了一个嵌套函数 inner_function
。inner_function
):可以访问外层函数的参数 x
,并且它自己接受一个参数 y
。当 inner_function
返回时,它会返回 x + y
的结果。outer_function(5)
时,它返回的是 inner_function
函数对象,并且这个函数对象记住了外层函数的参数 x=5
。即使 outer_function
已经执行完毕,inner_function
仍然能够访问到 x
的值。closure_example(10)
来调用闭包,此时 inner_function
中的 y
为 10,最终返回的结果是 5 + 10 = 15
。上一篇:python sqrt函数
下一篇:python中range
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站