Python for循环的本质——迭代器 可迭代的对象

 

Python的for循环本质上就是通过不断调用next()函数实现的,例如:

for x in [1, 2, 3, 4, 5]:
    pass

实际上等价于:

# 首先获得Iterator对象:
it = iter([1, 2, 3, 4, 5])
# 循环:
while True:
    try:
        # 获得下一个值:
        x = next(it)
    except StopIteration:
        # 遇到StopIteration就退出循环
        break

 

 

 

 

 

 

迭代器模式可用来:

1,为遍历不同的聚合结构提供一个统一的接口。

 

 

 

因为可以迭代,所以可以用于构建列表和其他可迭代的类型。

 

 

 

 

TypeError: Can't instantiate abstract class Iterator with abstract methods __next__

 

posted @ 2023-05-17 20:39  limalove  阅读(39)  评论(0)    收藏  举报