• Python 迭代器


    迭代器是一种对象,该对象包含值的可计数数字。

    迭代器是可迭代对象,可以遍历所有值。

    在Python中,迭代器包含方法 __iter__() 和 __next__()。

    1. 迭代器 VS 可迭代对象(Iterable)

    列表、元组、字典、集合都是可迭代对象。它们是迭代的容器,可从容器中获取迭代器(Iterator)。

    实例

    从元组返回一个迭代器

    mytuple = ("apple", "banana", "cherry")
    myit = iter(mytuple)
    
    print(next(myit))
    print(next(myit))
    print(next(myit))

    apple
    banana
    cherry

    甚至字符串也是可迭代对象

    mystr = "banana"
    myit = iter(mystr)
    
    print(next(myit))
    print(next(myit))
    print(next(myit))
    print(next(myit))
    print(next(myit))
    print(next(myit))

    b
    a
    n
    a
    n
    a

    2. 遍历迭代器

    mytuple = ("apple", "banana", "cherry")
    
    for x in mytuple:
        print(x)

    apple
    banana
    cherry

    提示:for 循环实际上创建了一个迭代器对象,并为每个循环执行 next() 方法。

    3. 创建迭代器

    把对象/类创建为迭代器,必须为对象实现 __iter__() 和 __next__() 方法。

  • 相关阅读:
    ccf I’m stuck!
    ccf 最大的矩形
    ccf ISBN号码
    ccf 出现次数最多的数
    ccf 相反数
    BestCoder Round #33
    15年3月CCF真题5-最小花费
    15年3月CCF真题4-网络延时
    15年3月CCF真题3-节日
    15年3月CCF真题2-数字排序
  • 原文地址:https://www.cnblogs.com/keye/p/15047992.html
Copyright © 2020-2023  润新知