- 作者简介:一名在校计算机学生、每天分享Python的学习经验、和学习笔记。
- 座右铭:低头赶路,敬事如仪
- 个人主页:b网络豆的主页
目录
前言
一.闭包
1.什么是闭包
前景引入:
2.闭包的定义需要满足以下三个条件:
总结:
前言
本章将会讲解Python编程函数的闭包。
一.闭包
1.什么是闭包
当我们在外部函数中定义了一个内部函数,并且内部函数能够读取到外部函数内的变量,这种函数我们就称为闭包。
前景引入:
2.闭包的定义需要满足以下三个条件:
- 在一个外函数中定义了一个内函数
- 内函数里运用了外函数的临时变量
- 并且外函数的返回值是内函数的引用
从上自下执行,碰到test(20)执行test里面内容输出--1-- 再向下执行输出--3--,返回test_in检测到了还有内层函数,将test_in返回时将临时变量与内层函数进行了绑定,绑定后继续向下执行返回到函数调用处res ,res相当于test_in ,我们想调用内层函数使用res进行调用执行res1=res(25) 输出了25 输出了--2--,使用到了number,从而证明产生了闭包。
总结:
- 闭包它是一种现象
- 一般情况下,外函数执行完毕时,临时变量会被释放。
- 但此时,外函数发现自己的临时变量会在将来被使用,
- 所以外函数结束的时候,在返回内函数引用的同时,将外函数的临时变量与内函数进行绑定。
- 这也是为什么当外函数结束,但内函数仍然可以使用外函数临时变量的原因。
创作不易,求关注,点赞,收藏,谢谢~