在 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:
result = self.current
self.current += 1
return result
else:
raise StopIteration
# 创建迭代器对象
iterator = MyIterator(0, 5)
# 使用 for 循环迭代迭代器
for num in iterator:
print(num)
在上述示例中,我们定义了一个名为MyIterator
的类。在类的初始化方法__init__
中,我们设置了初始值和结束值。__iter__
方法返回迭代器对象本身,以表明它是可迭代的。__next__
方法用于返回下一个元素,如果到达结束值,则抛出StopIteration
异常。
通过创建MyIterator
的实例,并使用for
循环来迭代它,我们可以按顺序访问迭代器中的元素。
这只是一个简单的示例,实际的迭代器可能会根据具体需求进行更复杂的实现,例如支持迭代器的其他方法(如next
)或处理不同的迭代逻辑。希望这个示例能帮助你理解如何在 Python 中创建一个迭代器😄