Python学习(十四)--迭代器

Posted 木九九

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python学习(十四)--迭代器相关的知识,希望对你有一定的参考价值。

        迭代的意思是重复做一件事很多次,就像在循环中做的那样。如果一个对象实现了__iter__方法,就可以对对象进行迭代。
        __iter__方法会返回一个迭代器,所谓的迭代器就是具有next方法的对象。next方法不需要任何参数,调用next方法时,迭代器会返回他的下一个值。如果next方法被调用,但是迭代器没有值可以返回,就会引发一个StopIteration异常。
        迭代器是使用的时候算一个值,不是像列表一样一次性获取所有制,占用较多内存。
class Fibs(Object):
    def __init__(self):
        self.a = 0
        self.b = 1
    def next(self):
        self.a, self.b = self.b, self.a+self.b
        return self.a
    def __iter__(self):
        return self
 
fibs = Fibs()
for f in fibs:
    if f >20:
        print f
        break 

 

以上是关于Python学习(十四)--迭代器的主要内容,如果未能解决你的问题,请参考以下文章

流畅的python第十四章可迭代的对象,迭代器和生成器学习记录

Python核心技术与实战——十四|深入了解迭代器和生成器

python第十四天(内置函数)

Python小白到老司机,快跟我上车!基础篇(十四)

python学习之-迭代器

十四:生成器函数和迭代器函数