zoukankan      html  css  js  c++  java
  • day14.1_生成器

    一、什么是生成器?

    在函数内但凡出现yield关键字,再调用函数就不会执行函数体代码,会返回一个值,改值称之为生成器,生成器的本质就是迭代器。

    二、为什么要有生成器?

    生成器是一种自定义迭代器的方式

    三、生成器用来干什么?

    print(res1)
    # first1
    # first2
    # first3

    2.for 循环的底层原理

    for i in x:   # x 为可迭代对象
                    # 1.  res1=x.__iter__()  先转为迭代器对象
                    # 2.  res1.__next__()     再依次取值
                    # 3.  for 自动检测,取完值之后自动停止取值

    3.总结yield的功能:

    3.1 提供自定义迭代器的方式

    3.2 yield 可以暂时停止函数的执行,并有返回值

    4. yield 和 return 的异同点

    相同点:都是再函数内使用,都可以返回值且没有类型限制和个数

    不同点:return 只可返回一次值且下面的同级代码不会继续执行,yield 可以返回多次值并且只是让该部分代码暂时停止住,若有需要,可以继续执行

  • 相关阅读:
    python自动华 (十二)
    python自动华 (十一)
    python自动华 (十)
    python自动华 (八)
    python自动华 (九)
    python自动华 (七)
    python自动华 (六)
    数据
    页面自适应
    判断是否移动端
  • 原文地址:https://www.cnblogs.com/Smart1san/p/9177961.html
Copyright © 2011-2022 走看看