首页 > 其他 > 详细

生成器

时间:2019-11-18 20:03:52      阅读:70      评论:0      收藏:0      [点我收藏+]
定义:一边循环一边计算的机制称为生成器
最大的特点: 节省内存
生成器的本质是迭代器
技术分享图片

 

 

send 关键字
     send 对应一个yield
           1,给上一个yield 传值
           2,打印yield值
                最后一个yield 取不到send 传的值
技术分享图片

 

 

yield from 关键字
      yield from 他会将这个可迭代对象(列表)的每个元素当成迭代器的每个结果进行返回。
      如果是yield 返回的是列表整体

技术分享图片

 

 

列表推导式 []
     1. 循环模式:  [变量(加工后的变量) for 变量initerable]
     2.  筛选模式:  [变量(加工后的变量) for 变量initerable   if 条件]
生成器表达式()
     •生成器表达式和列表推导式的语法上一模一样,只是把 [ ] 换成 ( ) 就行了
     取值通过for循环,或者用list 放列表,可以直观查看到值
•生成器表达式和列表推导式的区别:
•1,列表推导式比较耗内存,所有数据一次性加载到内存。而生成器表达式遵循迭代器协议,逐个产生元素。
•2,得到的值不一样,列表推导式得到的是一个列表.生成器表达式获取的是一个生成器对象
•3,列表推导式一目了然,生成器表达式只是一个内存地址。

生成器

原文:https://www.cnblogs.com/zuohangyu123/p/11884390.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!