python 类 迭代器 使用示例
时间: 2024-01-18 20:21:40 浏览: 96
在Python中,一个类可以通过实现`__iter__()`和`__next__()`方法来支持迭代器。`__iter__()`方法返回一个迭代器对象,而`__next__()`方法定义了迭代器的行为,决定了每次迭代时返回的元素。
下面是一个简单的示例,展示了如何在类中实现迭代器:
```
class MyRange:
def __init__(self, start, end):
self.start = start
self.end = end
self.current = start
def __iter__(self):
return self
def __next__(self):
if self.current < self.end:
value = self.current
self.current += 1
return value
else:
raise StopIteration
# 使用MyRange类创建一个迭代器对象
my_range = MyRange(0, 5)
# 使用for循环遍历迭代器中的元素
for num in my_range:
print(num)
```
这里我们定义了一个`MyRange`类,该类实现了一个简单的迭代器,用于生成从`start`到`end`之间的整数序列。`__iter__()`方法返回迭代器本身,而`__next__()`方法根据当前的迭代状态返回下一个元素。在这个示例中,我们使用`for`循环遍历`MyRange`对象的每个元素,并将其打印到控制台上。这种方式可以让我们使用类似于`range()`函数的方式来生成自定义的整数序列。
阅读全文