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