python yield(生成器)的简单使用

来源:互联网 发布:华为机顶盒安装软件 编辑:程序博客网 时间:2024/05/17 06:35

生成器有什么用?
简单来说,他能有效的帮我们提高程序运算速度和节约内存空间。
生成器是怎么工作的?
每一次调用生成器,生成器都会从上一次出现yeild的地方继续运行代码。如果是第一次运行生成器,那么生成器就会从函数的一开始开始运行(从接收参数的地方开始)。

def gen(num):    for i in range(num):        yield i ** 2#每次调用这个生成器执行到这个地方停止了,等待下次再调用继续从这个地方运行。def main():    scq = gen(5) #返回生成器对象    for i in scq: #也可以这样写 for i in gen(5),这样写后上面那条语句就可以不要了        print(i)main()

返回结果

014916
原创粉丝点击