python学习-39 生成器总结

2019-07-24 09:25:05来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

总结

 

1.语法上和函数类似:生成器函数和常规函数几乎是一样的。它们都是使用def语句进行定义,差别在于,生成器使用yield语句返回一个值,常规函数使用return语句返回一个值。

2.自动实现迭代器协议:对于生成器,python会自动实现迭代器协议,以便应用到迭代背景中。由于生成器自动实现了迭代协议,所以,我们可以调用他的next方法,并且在没有值可以返回的时候,生成器自动产生stoplteration异常

3.状态挂起:生成器使用yield语句返回一个值。yield语句挂起该生成器函数的状态,保留足够的信息,以便之后从它离开的地方继续执行

 

---优点

1.生成器的好处是延迟计算,以此返回一个结果。

2.生成器还能有效提高代码可读性

 

--缺点

生成器只能遍历一次


原文链接:https://www.cnblogs.com/liujinjing521/p/11197812.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:单例模式

下一篇:原创:Python编写通讯录,支持模糊查询,利用数据库存储