博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python中的闭包例解
阅读量:5866 次
发布时间:2019-06-19

本文共 468 字,大约阅读时间需要 1 分钟。

hot3.png

以前在ruby中用过闭包,看到python cookbook里面介绍了python的闭包的概念,并附上了相关的例子:

什么是闭包?

闭包(closure)简单的解释就是“内层函数”,由一个名字(变量)来指代,而这个名字(变量)对于“外层”包含它的函数而言,是本地变量:

    eg:

def make_adder(addend):    def adder(augend):        return augend+addend    return adder

执行p=make_adder(23)将产生内层函数adder的一个闭包,这个闭包在内部引用了名字addend,addend,而addend又绑定到数值23。q=make_adder(42)又产生了另一个闭包,这次名字addend则绑定到了值42.q和p相互之间并无关联,因此他们可以相互独立地和谐共处。

>>print p(100)

123

>>print q(100)

142

转载于:https://my.oschina.net/chenlei123/blog/128363

你可能感兴趣的文章
[samtools] 文本查看语法,浏览SNP/INDEL位点
查看>>
[samtools] sam格式与bam格式互换,提取未匹配reads,转为fastq
查看>>
codeigniter nginx rewrite规则配置【转】
查看>>
查找对应属性数量
查看>>
EOS开发语言和石墨烯技术介绍
查看>>
Hibernate--------八大类HQL查询集合
查看>>
robotframwork的WEB功能测试(二)—登录
查看>>
12.28jQuery 的取值赋值
查看>>
C++回调:利用Sink
查看>>
各种sqlite管理工具
查看>>
切片练习
查看>>
退信原因分析及解决办法
查看>>
项目: Zabbix监控搭建部署
查看>>
华为2016编程题
查看>>
APMServ 5.2.6.Apache启动失败,请检查相关配置。2.MySQL5.1启动失败的解决方法
查看>>
extJs学习基础4 Ext.each的用法
查看>>
Linux分区
查看>>
(转)IntelliJ IDEA java项目导入jar包,打jar包
查看>>
软件质量与测试--第六周作业 软件测试和评估
查看>>
实验4 颜色、字符串资源的使用
查看>>