Python 官方文档:入门教程 => 点击学习
这篇文章主要介绍python中的闭包怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1、闭包概念闭包在函数中提出的概念,简单来说就是一个函数定义中引用了函数外定义的变量,并且该函数可以在其定义环境外被执行。这样的
这篇文章主要介绍python中的闭包怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
闭包在函数中提出的概念,简单来说就是一个函数定义中引用了函数外定义的变量,并且该函数可以在其定义环境外被执行。这样的一个函数我们称之为闭包。实际上闭包可以看做一种更加广义的函数概念。因为其已经不再是传统意义上定义的函数。
闭包这个概念不仅仅只有在Python
中存在,在任何一个编程语言中都几乎存在。
闭包的条件:
外部函数中定义了内部函数
外部函数是有返回值
返回值是:内部函数
内部函数还引用了外部函数的变量
格式如下所示:
def 外部函数(): ... def 内部函数(): ... return 内部函数
示例代码:
def func(): a = 100 def inner_func(): b = 200 print(a, b) return inner_funcx = func()print(x) # <function func.<locals>.inner_func at 0x0000021704CD9620>x() # 100 200# 这样就可以直接调用inner_func函数,如果return不返回一个内部函数的话是不会有任何输出的
使用闭包还可以完成计数器的效果
def generate_count(): container = [0] def add_one(): container[0] += 1 print(f"这是第{container[0]}次调用") return add_onecount = generate_count()count() # 这是第1次调用count() # 这是第2次调用count() # 这是第3次调用
闭包的缺点如下所示:
作用域没有那么直观
因为变量不会被垃圾回收所以有一定的内存占用问题。
闭包的作用如下所示:
可以使用同级的作用域
读取其他元素的内部变量
延长作用域
以上是“Python中的闭包怎么用”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网Python频道!
--结束END--
本文标题: Python中的闭包怎么用
本文链接: https://www.lsjlt.com/news/304556.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0