zoukankan      html  css  js  c++  java
  • day15 Pyhton学习

    迭代器

    掌握for循环

    实际上for循环的本质,就是将一个可迭代的变成迭代器

    每一次从中取值都相当于执行了一次next

    如果是迭代器,那么只能取一次值

    生成器 - 本质就是迭代器

    生成器函数(返回值是生成器) :

      处理比较复杂的逻辑

      yield的形式返回值,并且再一次调用中可以多次执行yield

    生成器表达式的(结果是生成器) :

      处理比较简单的逻辑

      并且能够以更少的代码来节省时间空间

    # 计算移动平均值的例子
    def cal_avg():
        sum = 0
        count = 0
        while True:
            if count:
                num = yield sum/count
            else:
                num = yield 0
            sum += num
            count += 1
    g=cal_avg()
    print(g.__next__())#0
    avg1 = g.send(7)
    print(avg1)#7
    avg1 = g.send(9)
    print(avg1)#9
    avg1 = g.send(8)
    print(avg1)#8
    avg1 = g.send(10)
    print(avg1)#10
  • 相关阅读:
    2019.1.8兔子问题和汉诺塔问题的解决代码
    REST
    存储过程和函数练习
    十六、性能优化
    十五、MySQl日志
    Shell入门
    十四、数据备份
    十三、MySQL触发器
    十二、视图
    十一、MySQL锁
  • 原文地址:https://www.cnblogs.com/pythonz/p/9918307.html
Copyright © 2011-2022 走看看