# 一个简单的生成器(generator)例子 斐波那契数列
def Fab(m):
n,a,b = 0,0,1
while n < m:
yield b
a,b=b,a+b
n+=1
f = Fab(5) # 此时f为一个可以迭代的对象
while True:
try:
print(f.__next__())
except StopIteration as err:
print(err)
break
from inspect import isgeneratorfunction # 此方法用来判断一个函数是否为一个generator
print(isgeneratorfunction(Fab))
网友评论