python生成器函数中return的作用


当生成器函数中含有return时,return不会返回任何值,会直接终止当前生成器,对yield的作用没有影响,当函数执行到return时候,调用next()来执行生成器则会报错,如果使用for循环遍历,for循环会自动捕获该异常,直接停止遍历

def func():
    for i in range(10):
        i += 1
        yield i
        # print(i)
        return i
f = func()
for i in f:
    print(i)
f = func()
next(f)
# f.send(2)
next(f)
next(f)
next(f)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM