迭代器协议高级应用(Python 3.8 + Windows 7 环境)迭代器协议是 Python 3.8 中非常核心且强大的特性,通过实现__iter__()和__next__()方法,可以实现惰性求值、内存高效、无限序列、数据管道等高级场景。在 Windows 7 + Python 3.8 环境下完全兼容,无需额外安装任何包(标准库即可)。1. 迭代器协议回顾(快速基础)classMyIterator:def__init__(self,start=0):self.current=startdef__iter__(self):returnself# 返回自身def__next__(self):ifself.current=10:# 终止条件raiseStopIteration value=self.current self.current+=1returnvalue# 使用it=MyIterator()fornuminit:# 自动调用 __iter__ 和 __next__print(num)运行结果:01234567892. 高级应用一:生成器(Generator)—— 最常用高级形式生成器是语法糖实现的迭代器,yield会自动处理__iter__和__next__,适合大数据流处理、协程。示例1:无限斐波那契数列(惰性、无限迭代器)deffibonacci():a,b=0,1whileTrue:# 无限循环也不占内存yielda a,b=b,a+b# 高级用法:只取前 N 项fib=fibonacci()foriinrange(20):print(next(fib))# 每次只计算一次输出:01123581321345589144233377610987159725844181