Python迭代器

python迭代器具备两个基本条件:

1 实现__iter__方法,返回自身。

2 实现next方法,返回下一个元素,并且当元素没有了要抛出StopIteration异常。

另外有说法是:一个实现了__iter__的对象是可迭代的,一个实现了next方法的对象是迭代器。

class myiter:
    #接收一个迭代数值
    def __init__(self, i):
        self.i = i
    #实现__iter__,返回迭代对象自身
    def __iter__(self):
        return self

    #实现next
    def next(self):
        self.i -= 1
        if self.i <0:
            raise StopIteration
        return  self.i
#以上就是一个迭代器 可以迭代之

m = myiter(10)
for i in m:
    print i
原文地址:https://www.cnblogs.com/lipijin/p/3341120.html