Python中如何实现闭包函数的高级应用?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1790个文字,预计阅读时间需要8分钟。
闭包函数是什么+如果内函数使用了外函数的局部变量,并且外函数将内函数返回出来,那么这个过程被称为闭包,那里的内函数是闭包函数。
闭包函数 什么是闭包函数如果内函数使用了外函数的局部变量,并且外函数把内函数返回出来的过程叫做闭包,里面的内函数是闭包函数。
# 外函数 outer
def outer():
# 外函数变量 num
var = '外函数局部变量'
# 内函数 inner
def inner():
# 内函数使用了外函数的变量 num
print('内函数使用了:' + var)
# 外函数将使用了外函数的局部变量的内函数返回
return inner
# 返回出的结果就是内函数 inner,现在inner就是一个闭包函数
func = outer()
# 执行返回出的 inner 函数
func() # 内函数使用了:外函数局部变量
下面是一个复杂的版本。
inner函数返回了函数x 和 y,x 和 y是外函数的内函数,虽然覆盖了原有的外函数的局部变量,但是这两个函数本质上还是外函数的布局变量,所以外函数返回了inner,inner就是一个闭包函数。
inner返回了外函数的x和y函数,x和y函数都是用了外函数的内函数num3,外函数返回inner,inner返回了x和y,所以变相的就是外函数返回了x和y,所以x和y也是闭包函数。
本文共计1790个文字,预计阅读时间需要8分钟。
闭包函数是什么+如果内函数使用了外函数的局部变量,并且外函数将内函数返回出来,那么这个过程被称为闭包,那里的内函数是闭包函数。
闭包函数 什么是闭包函数如果内函数使用了外函数的局部变量,并且外函数把内函数返回出来的过程叫做闭包,里面的内函数是闭包函数。
# 外函数 outer
def outer():
# 外函数变量 num
var = '外函数局部变量'
# 内函数 inner
def inner():
# 内函数使用了外函数的变量 num
print('内函数使用了:' + var)
# 外函数将使用了外函数的局部变量的内函数返回
return inner
# 返回出的结果就是内函数 inner,现在inner就是一个闭包函数
func = outer()
# 执行返回出的 inner 函数
func() # 内函数使用了:外函数局部变量
下面是一个复杂的版本。
inner函数返回了函数x 和 y,x 和 y是外函数的内函数,虽然覆盖了原有的外函数的局部变量,但是这两个函数本质上还是外函数的布局变量,所以外函数返回了inner,inner就是一个闭包函数。
inner返回了外函数的x和y函数,x和y函数都是用了外函数的内函数num3,外函数返回inner,inner返回了x和y,所以变相的就是外函数返回了x和y,所以x和y也是闭包函数。

