1 有yield关键字的函数是一个生成器
2生成器的触发需要需要__next__()进行触发
案例:
def run(): count = 0 print('__next__()触发代码的执行') while True: n = yield count print("-->",n,count) count +=1 g = run() # 有yield 已经变成了一个生成器,调用run()不会执行代码 print('单独调用run不会执行代码') g.__next__() # 生成器需要调用__next__()时才会触发代码执行 g.send('王华') g.send('jack')# g.send('raom')# 结果:单独调用run不会执行代码
__next__()触发代码的执行
-->王华 0

本文通过实例详细介绍了Python中生成器的概念及使用方法,包括如何使用yield关键字创建生成器,以及如何通过__next__()方法触发生成器的执行过程。
937

被折叠的 条评论
为什么被折叠?



