博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
生成器
阅读量:4221 次
发布时间:2019-05-26

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

任何包含yield 语句的函数称为生成器。

yield不像return 返回值,而是每次产生多个值。每次产生一个值时,函数就会被冻结。被激活后从停止点开始.

def flatten(nested):    for sublist in nested:        for element in sublist:            yield element
>>> nested = [[1,2],[3,4],[5]]>>> for num in flatten(nested):	print(num)	12345>>> list(flatten(nested))[1, 2, 3, 4, 5]
数量少用列表推导式,数量多用 生成器。

生成器可以在当前的圆括号内直接使用,不用增加另外一对括号:

>>> sum(i**2 for i in range(10))285

转载地址:http://pqmmi.baihongyu.com/

你可能感兴趣的文章
【屌丝程序的口才逆袭演讲稿50篇】第二篇:专注的力量 [张振华.Jack]
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第三篇:我的舍与得的2014[张振华.Jack]
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第五篇:不要给自己找任何借口【张振华.Jack】
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第七篇:请留意我们身边的风景 【张振华.Jack】
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第八篇:坚持的力量 【张振华.Jack】
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第九篇:春节那些事-过年回家不需要理由【张振华.Jack】
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第十一篇:马云乌镇40分钟演讲实录【张振华.Jack】
查看>>
Java并发编程从入门到精通 张振华.Jack --我的书
查看>>
【屌丝程序的口才逆袭演讲稿50篇】第十二篇:世界上最快的捷径【张振华.Jack】
查看>>
Conclusion for Resource Management
查看>>
Conclusion for Constructors,Destructors,and Assignment Operators
查看>>
《浪潮之巅》1 AT&T
查看>>
《浪潮之巅》2蓝色巨人 IBM公司
查看>>
《浪潮之巅》3水果公司的复兴
查看>>
《浪潮之巅》4计算机工业的生态链
查看>>
《浪潮之巅》5奔腾的芯 英特尔公司
查看>>
python语言程序设计基础笔记(三)从题目到方案
查看>>
读取txt文件出现出现多余空行问题
查看>>
从理论到实践开发自己的聊天机器人
查看>>
@***装饰器(python)
查看>>