python

Python迭代器协议怎样实现

小樊
81
2024-11-01 23:09:07
栏目: 编程语言

在Python中,迭代器协议是一个内置协议,它定义了一个迭代器对象必须实现的方法。迭代器协议包括两个方法:__iter__()__next__()。下面是一个简单的示例,展示了如何实现一个迭代器协议:

class MyIterator:
    def __init__(self, start, end):
        self.start = start
        self.end = end

    def __iter__(self):
        return self

    def __next__(self):
        if self.start >= self.end:
            raise StopIteration
        else:
            self.start += 1
            return self.start - 1

# 创建一个迭代器对象
my_iterator = MyIterator(0, 5)

# 使用for循环遍历迭代器
for number in my_iterator:
    print(number)

在这个示例中,我们创建了一个名为 MyIterator 的类,它接受两个参数:startend。这两个参数定义了迭代器的范围。

当我们使用 for 循环遍历 MyIterator 对象时,它会按顺序打印出从 startend - 1 的整数。

0
看了该问题的人还看了