第二十三章、迭代器和生成器
1. 迭代器
可迭代对象(iterable)
可迭代对象是指能够依次获取数据元素的对象,是可以使用for语句遍历的对象。
如:
lst = [100, 200, 300]
可迭代对象是指能用iter(iterable)函数返回迭代器的对象。
什么是迭代器
- 迭代器是访问可迭代对象的工具。
- 迭代器是指用 iter(iterable) 函数返回的对象。
- 迭代器可以用next(iterator)函数获取可迭代对象的数据。
作用
遍历可迭代对象,为同时访问多个可迭代对象提供方法。
示例
>>> lst = [100, 200, 300]
>>> it = iter(lst) # it 绑定可以访问列表的迭代器
>>> it
<list_iterator object at 0x1064c92d0>
>>> next(it) # 获取列表的第一个值
100
>>> next(it) # 获取列表的第二个值
200
迭代器相关的函数
函数
说明
iter(iterable)
从可迭代对象(iterable)中返回一个迭代器(iterator),iterable必须是能提供一个迭代器的对象
next(iterator)
从迭代器iterator中获取下一个记录,如果无法获取一下条记录,则引发 StopIteration 异常