1
2
3
4
5
6
7
8
9
def myGenerator(max):
n, a, b = 0, 0, 1
while n < max:
yield b
a, b = b, a + b
n = n + 1

for i in myGenerator(10):
print(i)

带有yeild的函数就是generator。yeild每次被执行到,都会返回一个迭代值。下一次执行时从yeild所在的下一个语句继续执行。