emurate python 迭代器
时间: 2023-11-16 08:54:01 浏览: 204
Python中的迭代器是一种访问集合元素的方式,可以遍历集合中的每一个元素而不暴露集合的底层实现。要实现一个迭代器,需要定义一个类,其中包含两个方法:`__iter__()`和`__next__()`。`__iter__()`方法返回迭代器对象本身,`__next__()`方法返回集合中的下一个元素,如果没有下一个元素则抛出`StopIteration`异常。
以下是一个简单的迭代器示例,它可以遍历一个列表并返回每个元素:
```python
class MyIterator:
def __init__(self, lst):
self.lst = lst
self.index = 0
def __iter__(self):
return self
def __next__(self):
if self.index >= len(self.lst):
raise StopIteration
value = self.lst[self.index]
self.index += 1
return value
# 使用迭代器遍历列表
my_list = [1, 2, 3]
my_iterator = MyIterator(my_list)
for item in my_iterator:
print(item)
```
输出结果为:
```
1
2
3
```
阅读全文