python实例

在 Python 中,迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。要创建一个迭代器类,我们需要实现 __iter__() 和 __next__() 方法。

实例

class MyIterator:
    def __init__(self, start, end):
        self.current = start
        self.end = end
        
    def __iter__(self):
        return self
    def __next__(self):
        if self.current < self.end:
            num = self.current
            self.current += 1
            return num
        else:
            raise StopIteration
            
# 使用迭代器
my_iter = MyIterator(1, 5)
for num in my_iter:
    print(num)



代码解析:

  • __init__ 方法:初始化迭代器,设置起始值 start 和结束值 end

  • __iter__ 方法:返回迭代器对象本身,这是迭代器协议的一部分。

  • __next__ 方法:返回迭代器的下一个值。如果当前值小于结束值,则返回当前值并将当前值加1;否则,抛出 StopIteration 异常,表示迭代结束。

输出结果:

1
2
3
4