码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2018-11-05 20:04:19      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:youdao   bsp   for循环   for   image   nal   引用   you   return   

生成器(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闭包、生成器、迭代器、装饰器、

标签:youdao   bsp   for循环   for   image   nal   引用   you   return   

原文地址:https://www.cnblogs.com/huangguoming/p/9910964.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!