第二个def缩进不对,往左边移动
还有就是num是在函数里定义的,你要主程序访问,需要定义在函数外面作为全局变量
函数里要用 global num
def f():
x,y,i=1,1,1
while True:
try:
while i<t:
x,y=y,x+y
i+=1
except Exception:
t = yield x
x,y=y,x+y
i+=1
else:
yield x
t=None