zoukankan      html  css  js  c++  java
  • 生成器

    1. 生成器
    生成器的本质就是迭代器
    生成器由生成器函数来创建或者通过生成器表达式来创建

    2. 生成器函数
    生成器函数: 在函数中return换yield, 这个函数就是生成器函数
    def func():
        yield
    gen = func()    # 函数并不会被执行, 而是创建一个生成器对象
        取值:
    gen.__next__()   # 下一个
    gen.send()     # 可以给上一个yield传值, 第一次执行不能用send()
        特性:
            1. 节省内存
    2. 惰性机制
    3. 只能向前

    3. 各种推导式
    [结果 for循环 if条件]   #列表推导式
    key: value for循环 if条件} #字典推导式
    {key for循环 if条件} #集合推导式:
    4. 生成器表达式(笔试题)
    (结果 for循环 if条件)
        惰性机制
        记录在内存中一段代码.

    生成器: 要的时候才能拿到值!!!
      
    惰性机制, 不到最后不会拿值!!!
     
    作者:凯旋.Lau
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    CF293E Close Vertice
    [SCOI2016]幸运数字
    [NOI2003]逃学的小孩
    0302读后感
    1231递归下降语法分析
    1210-有穷自动机
    11.12 评论汇总
    1029语言文法
    0921 词法分析
    0909开启编译原理之路
  • 原文地址:https://www.cnblogs.com/KX-Lau/p/9670404.html
Copyright © 2011-2022 走看看