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

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a735311619/article/details/78075022

生成器有什么用?
简单来说,他能有效的帮我们提高程序运算速度和节约内存空间。
生成器是怎么工作的?
每一次调用生成器,生成器都会从上一次出现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()

返回结果

0
1
4
9
16
阅读更多 登录后自动展开
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页