生成器的应用

匿名 (未验证) 提交于 2019-12-02 23:47:01
# def average(): #     sum = 0 #     count = 0 #     avg = 0 #     while True: #         num = yield avg #         sum += num    # 10 #         count += 1    # 1 #         avg = sum/count # # avg_g = average() # avg_g.__next__() # avg1 = avg_g.send(10) # avg1 = avg_g.send(20) # print(avg1)
获取移动平均值
# def init(func):   #装饰器 #     def inner(*args,**kwargs): #         g = func(*args,**kwargs)    #g = average() #         g.__next__() #         return g #     return inner # # @init # def average(): #     sum = 0 #     count = 0 #     avg = 0 #     while True: #         num = yield avg #         sum += num    # 10 #         count += 1    # 1 #         avg = sum/count # # avg_g = average()   #===> inner # ret = avg_g.send(10) # print(ret) # ret = avg_g.send(20) # print(ret)
预激生成器的装饰器

yield from 功能

#python 3中 # def generator(): #     a = 'abcde' #     b = '12345' #     for i in a: #         yield i #     for i in b: #         yield i # def generator(): #     a = 'abcde' #     b = '12345' #     yield from a #     yield from b # # g = generator() # for i in g: #     print(i)
yield from

 

转载请标明出处:生成器的应用
文章来源: 生成器的应用
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!