0. 默写
a. 生成器函数
获取移动平均值例子:
1 def init(func): 2 def inner(*args,**kwargs): 3 ret = func(*args,**kwargs) 4 ret.__next__() 5 return ret 6 return inner 7 @init 8 def average(): 9 average = 0 10 count = 0 11 sum = 0 12 while 1: 13 num = yield average 14 sum += num 15 count += 1 16 average = sum/count 17 ret = average() 18 print(ret.send(10)) 19 print(ret.send(20))