zoukankan      html  css  js  c++  java
  • Python基础-11-迭代器/生成器

    可迭代对象:可听过调用__iter__方法,转化成有next() 方法的对象称为可迭代对象

    迭代器:可通过next()方法调用,最后会抛出stopIteration异常的对象

    生成器:1.列表生成器:列表解析[]变成()就是生成器表达式 eg:g = (x*x for x in range(10))

             2.函数生成器:带yield

        3.生成器只能用一次

    生成器调用方式:__next__(),next(),send()

    #send()调用函数生成器例子
    def test():
      print('开始啦!!!')
      first = yield 1
      print('第一次',first)
      yield 2
      print('第二次')
     
    t = test()
    res = t.__next__() #相当于next(t)
    print(res)
    t.send(None) #将None传递给yield再赋值给first
    
    输出结果如下:
    开始啦!!!
    1
    第一次 None
  • 相关阅读:
    KVM安装以及远程连接
    开博客祭
    CQOI 2021
    琐记——学长们
    大事祭
    关于洛谷与博客园的博客的一些声明
    CSP-S 2020 & NOIP 2020 日记与游记
    调和级数
    快速乘
    二叉堆
  • 原文地址:https://www.cnblogs.com/josie930813/p/9680867.html
Copyright © 2011-2022 走看看