19闭包生成器迭代器装饰器

Posted huangguoming

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了19闭包生成器迭代器装饰器相关的知识,希望对你有一定的参考价值。

生成器(generator)
2种构造方式
技术分享图片
 
技术分享图片
 
可以g.__next__() 或next(g),或for循环
技术分享图片
g.send()传进去的参数,会被temp = yield i 前的temp接受,每次运行到temp = yield i,都会给temp传send()的值,若无,则temp被赋值None
 
 
迭代器
 
技术分享图片
 
技术分享图片
 
 
闭包
技术分享图片
 
 
技术分享图片
 
技术分享图片
但这两个不是闭包
内部函数为闭包条件:1内部函数引用外部函数局部变量,2返回内部函数
 
技术分享图片
 
技术分享图片
 
 
技术分享图片
 
技术分享图片
 
技术分享图片
 
技术分享图片
 
技术分享图片
 
技术分享图片
通用装饰器需要上面两种结合1.不定参数和关键字参数2返回值
因为其实没有return的函数也有返回值,为空,不输出(连None都无)

以上是关于19闭包生成器迭代器装饰器的主要内容,如果未能解决你的问题,请参考以下文章

python装饰器迭代器生成器闭包等等

9.23闭包函数/装饰器/迭代器/生成器

笔记---迭代器,闭包,装饰器

Python概念之装饰器迭代器生成器

Python--核心2(生成器,迭代器,闭包,装饰器)之生成器

函数进阶——闭包,装饰器,生成器,迭代器