迭代器

在训练模型的时候希望能够反复迭代数据,这时候生成器就不太方便了,直接一个大list也比较耗费资源,这时候用可以反复迭代的迭代器就比较方便。反复迭代的关键就是在__iter__函数中重置迭代参数,示例如下:

class MyIter():
    def __init__(self):
        self.i = 0
    def __next__(self):
        if self.i > 10:
            raise StopIteration
        self.i = self.i+1
        return self.i
    
    def next(self):  #for python2
        return self.__next__()
    
    def __iter__(self):
        self.i=0
        return self
    

你可能感兴趣的:(迭代器)