• 迭代器


    1.什么是迭代器?

      迭代指的是一个重复的过程,没一次重复都是基于上一次的结果而来的

      li =[‘a',’b',‘c',’d',‘e']

      li=['a','b','c','d','e']

      li='hello'

      

      i=0

      while i<len(li):

        print(li [ i ] )

        i+=1

      迭代器指的是迭代取值的工具,该工具的特点是可以不依赖于索引取值

    2. 为何要用迭代器

      可迭代的对象: 但凡内置有.__iter__方法的对象都称之为可迭代的对象

      迭代器的对象:既内置有.__iter__方法,又内置.__next__方法

      可迭代的对象:str,list,tuple,dict,set,文件对象

      迭代对象:文件对象

    可迭代的对象====>迭代对象:调用可迭代对象内置的__iter__方法会有一个返回值,该返回值就是对应的迭代器对象

    dic={’x':1,‘y’:2,‘z':3)

    iter_dic=dic.__iter__()

    print(iter_dic)

    res=iter_dic.__next__()

    还有一种表达方式:

        iter()                               next()

    yield 关键字:只能在函数内

    #在函数内但凡包含有yield关键字,在去执行函数,就不会立刻运行函数代码了

    #会得到一个返回值,该返回值称之为生成器对象,生成器本质就是迭代器

    #总结yield:

    1.提供一种自定义迭代器的解决方案

    2.yield可用于返回值

           yield  VS   return

         相同点:都可以用于返回值

      不同点:yield可以暂停,yiedld可以返回多次值,而return只能返回值一次函数就立刻终止

    def func()

      print(’====第一次‘)

      yield 1

      print(’====第二次‘)

      yield 2

      print(’====第三次‘)

      yield 3

      print(’====第四次‘)

      yield 4

  • 相关阅读:
    html5传感器
    html5 canvas手写字代码(兼容手机端)
    PHP pdo单例模式连接数据库
    PHP变量回收
    PHP不过过滤防止xss攻击的方法
    jquery监听回车
    jquery预加载显示百分比
    创建自己的代码仓库
    Luxurious Houses
    Vasya the Hipster
  • 原文地址:https://www.cnblogs.com/frank007/p/9720311.html
Copyright © 2020-2023  润新知