国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > Python常见问题 > python闭包函数是什么

python闭包函数是什么

头像

silencement

2019-10-16 15:12:144127浏览 · 0收藏 · 0评论

函数身为第一类对象,它可以作为函数的返回值返回,现在我们来考虑如下的例子:

def print_msg():
    # print_msg 是外围函数
    msg = "zen of python"
    def printer():
        # printer 是嵌套函数
        print(msg)
    return printeranother = print_msg()# 输出 zen of pythonanother()

这段代码和前面例子的效果完全一样,同样输出 "zen of python"。不同的地方在于内部函数 printer 直接作为返回值返回了。

一般情况下,函数中的局部变量仅在函数的执行期间可用,一旦 print_msg() 执行过后,我们会认为 msg变量将不再可用。然而,在这里我们发现 print_msg 执行完之后,在调用 another 的时候 msg 变量的值正常输出了,这就是闭包的作用,闭包使得局部变量在函数外被访问成为可能。(更多学习内容,请点击Python学习网

看完这个例子,我们再来定义闭包,维基百科上的解释是:

在计算机科学中,闭包(Closure)是词法闭包(Lexical Closure)的简称,是引用了自由变量的函数。这个被引用的自由变量将和这
个函数一同存在,即使已经离开了创造它的环境也不例外。所以,有另一种说法认为闭包是由函数和与其相关的引用环境组合而成的实
体。

这里的 another 就是一个闭包,闭包本质上是一个函数,它有两部分组成,printer 函数和变量 msg。闭包使得这些变量的值始终保存在内存中。

闭包,顾名思义,就是一个封闭的包裹,里面包裹着自由变量,就像在类里面定义的属性值一样,自由变量的可见范围随同包裹,哪里可以访问到这个包裹,哪里就可以访问到这个自由变量。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

朝国年经的继3| 酷狗上学记| 伦理《少妇的滋味》完整版| 蜜桃成熟 在线| 《年轻朋友的妻子3》| 公车上双乳被两男人夹击电影| 《相濡以沫的夜晚》动漫免费观看 | 母与子免费观看大全电视剧邻居大..| 欧美电影免费观看大全能出没| 小蜜桃免费观看高清电视剧| 妈妈和女婿免费播放电视剧大全| 无码欧XXXXX在线观看免费| 18禁男男腐啪GV真人视频| 阴部按摩出水太尴尬怎么办 | 女生胸前两颗大大的包是什么| 杀妻同盟军| 大龟慢慢挺进我的体内| 白色变态蕾丝超薄开档连身袜| 《性爽2》电影| 7K7K影院免费观看电视剧大全 | 蜜桃成熟3D| 农村真实亲子乱子伦| 成品网站1688在线应用评价| 免费网站在线观看人数在显示| 《强壮的公2做爱观看| 每日大赛| 情趣内衣秀| 人犬兽人在线观看免费完整一| 小静被门卫大爷灌满JNG液视....| 公交车上扒开腿做爰H漫画| 兄弟的老婆4免费观看电视剧| 九九在线观看免费播放大全电视剧| 法国满天星《太太们》| 鲁鲁射击免费播放电视剧全部| 《妻子6》在线观看免费版电视剧| 老公把舌头放进我B里搅拌| 狼人加鲁鲁兽天赋澳彩心水| 我穿水K被同桌C出水了H漫画| 老公把舌头放进我B里搅拌| 欧式少女16集全免费观看电视剧| 《喂奶人妻厨房HD》