Python中的迭代器和生成器区别
2021/8/13 1:35:56
本文主要是介绍Python中的迭代器和生成器区别,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
迭代器
class MyNumbers: def __iter__(self): self.a = 1 return self def __next__(self): if self.a <= 10: x = self.a self.a += 1 return x else: raise StopIteration myclass = MyNumbers() myiter = iter(myclass) if __name__ == '__main__': while True: print(next(myiter))
生成器
1 def fibonacci(n): # 生成器函数 - 斐波那契 2 a, b, counter = 0, 1, 0 3 while True: 4 if (counter > n): 5 return 6 yield a 7 a, b = b, a + b 8 counter += 1 9 f = fibonacci(10) # f 是一个迭代器,由生成器返回生成 10 11 if __name__ == '__main__': 12 while True: 13 try: 14 print (next(f), end=" ") 15 except StopIteration: 16 sys.exit()
原文来源:
https://www.runoob.com/python3/python3-iterator-generator.html
这篇关于Python中的迭代器和生成器区别的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-03用FastAPI掌握Python异步IO:轻松实现高并发网络请求处理
- 2025-01-02封装学习:Python面向对象编程基础教程
- 2024-12-28Python编程基础教程
- 2024-12-27Python编程入门指南
- 2024-12-27Python编程基础
- 2024-12-27Python编程基础教程
- 2024-12-27Python编程基础指南
- 2024-12-24Python编程入门指南
- 2024-12-24Python编程基础入门
- 2024-12-24Python编程基础:变量与数据类型