Python yield使用浅析

yield可将一个函数变成生成器,每次调用时,返回yield的结果,下次迭代时,从yield 下条语句开始执行。

一个典型的例子,斐波拉切数列:

def fab(max):
    n, a, b = 0, 0, 1
    while n < max:
        yield b
        # print b
        a, b = b, a + b
        n = n + 1

输出

>>> fab(5)
1
1
2
3
5

 

参考:https://www.liaoxuefeng.com/article/001373892916170b88313a39f294309970ad53fc6851243000

 

posted @ 2018-04-18 08:46  牧马人夏峥  阅读(226)  评论(0编辑  收藏  举报