python__iter__
时间: 2023-12-17 09:05:22 浏览: 28
__iter__是Python中的一个特殊方法,用于定义一个可迭代对象。可迭代对象是指能够被迭代(例如使用for循环)的对象。__iter__方法应该返回一个迭代器对象,该对象应该实现__next__方法,该方法返回序列中的下一个元素。如果没有更多的元素,则__next__方法应该引发StopIteration异常。以下是一个简单的示例,展示了如何在类中实现__iter__方法:
```python
class MyIterator:
def __init__(self, limit):
self.limit = limit
self.current = 0
def __iter__(self):
return self
def __next__(self):
if self.current < self.limit:
value = self.current
self.current += 1
return value
else:
raise StopIteration
my_iter = MyIterator(5)
for num in my_iter:
print(num)
```
上述代码中,我们定义了一个名为MyIterator的类,该类实现了__iter__和__next__方法。__iter__方法返回一个迭代器对象,该对象是类本身的实例。__next__方法返回序列中的下一个元素,并在没有更多元素时引发StopIteration异常。在主程序中,我们创建了一个MyIterator对象,并使用for循环遍历该对象,打印出每个元素。