如何理解python的yield生成器功能?

发布于 2023-06-15 18:35:20
浏览量
8001
1 个回答
猫哥
猫哥 项目组成员 2023-06-15
希望我的回答能对你有所帮助

定义如下函数,查看它的输出结果:

def 生成器函数测试():
    def one_gen():
        x = 1
        print(f"x={x}")
        for i in range(2):
            print('ccccc')
            yield x+i
            print('aaaa')
    print('start')
    y = one_gen()
    print('start2')
    for i in y:
        print('start3')
        print(f"res={i}")
生成器函数测试()

输出结果:

start
start2
x=1
ccccc
start3
res=1
aaaa
ccccc
start3
res=2
aaaa

从结果上看我们能得出如下结论

学习
记录

发布
问题

分享
好友

手机
浏览

扫码手机浏览