1. 迭代器
迭代器类似于列表生成式[ i for i in range(10) ], 不过把 [ ] 换成 (),从而变成迭代器
迭代器的概念及其特点
- 迭代器是python最强大的功能之一,是访问集合元素的一种方式
- 迭代器是一个可以记住遍历位置的对象
- 迭代器从集合的第一个元素开始访问, 直到所有元素被访问完而结束,访问完的标识是出现异常标识StopIteration。它只能往前不能后退
- 迭代器有两个基本方法:iter() 和 next()
- 字符串、列表、元组等可迭代对象 (iterable)都可以用于创建迭代器
可迭代的对象iterable和迭代器iterator
使用isinstance() 函数来判别左参数实例是否为右参数对象的子类
- 判断是否为可迭代对象

结果:
- 判断是否为迭代器:

结果
案例
(1)列表迭代器
创建一个列表,通过 iter() 函数来将可迭代对象 list 转化成迭代器,再通过next()函数来逐步遍历迭代器,最后返回异常标识 StopIteration 标识表示遍历结束
(2)字典迭代器(迭代key值)
2. 生成器
生成器为一个函数
生成器的概念及其特点
- 在python中使用了yield的函数便称为生成器(generator)
- 与普通函数不同,生成器是一个返回迭代器的函数,只能用于迭代操作,更简单的理解是:生成器就是一个迭代器
- 在调用生成器运行的过程中,每次遇到 yield 时,函数会暂停并保存当前运行的所有信息,返回yield的值,并在下一次执行 next() 时从当前位置继续运行
- 调用一个生成器函数,返回的是一个迭代对象
案例

结果:
来源:CSDN
作者:wisewho?
链接:https://blog.csdn.net/weixin_44225602/article/details/88838845



