zoukankan      html  css  js  c++  java
  • Python----yield 生成器

    # yield 生成器
    # 1.调用yield函数的时候,并不会直接执行这个函数,而是返回一个generator对象
    # 2.next去取值的时候,都会直接走到yield就停止(大家可以暂时把yield看成return)
    # 3.当你yield执行完毕的时候,就相当于这个函数执行结束,直到下次调用next才会继续返回新的值
    
    def yield_demo_1():
        for i in range(1, 10):
            return i
    
    
    def yield_demo_2():
        for i in range(1, 10):
            yield i
    
    
    print(yield_demo_1())
    
    print(yield_demo_2())  # 生成器 <generator object yield_demo_2 at 0x000001D9C810AEB0>
    
    gen = yield_demo_2()
    print(list(gen))       # [1, 2, 3, 4, 5, 6, 7, 8, 9]
    
    # print('调用生成器:', next(gen))    # 1
    # print('调用生成器:', next(gen))    # 2
    # print('调用生成器:', next(gen))    # 3
    # print('调用生成器:', next(gen))    # 4
    # print('调用生成器:', next(gen))    # 5
  • 相关阅读:
    第七次作业
    随堂讨论8
    第六次作业
    随堂讨论-5
    曹宇轩-第五次作业
    随堂讨论3-刘昕昕,曹宇轩
    曹宇轩-第四次作业
    Alpha阶段项目复审
    团队作业4 -项目冲刺
    第六篇 Scrum冲刺博客
  • 原文地址:https://www.cnblogs.com/Z-Queen/p/14728215.html
Copyright © 2011-2022 走看看