迭代器
- 定义:能够使用for-in进行遍历,并且可以通过next函数依次获取元素的对象
- 说明:
-
- 生成器就是一种特殊的迭代器
- 判断一个对象是否是迭代器
- 字符串、列表、元组、集合、字典等都不是迭代器,它们都是可迭代对象
from collections import Iterator
lt = (i for i in range(10))
print(isinstance(lt, Iterator))
可迭代对象
- 定义:能够使用for-in进行遍历的对象,都是可迭代对象
- 使用:判断是否是可迭代对象
- 说明:
-
- 迭代器一定是可迭代对象
- 前面学习的列表、元组等都是可迭代对象
- 将可迭代对象转换为迭代器,使用专门的函数iter
例子1:
from collections import Iterator ,Iterable
lt = [1, 2, 3]
# 将可迭代对象转换为迭代器
lt = iter(lt)
print(lt)
例子2:判断一个对象是否可迭代,是否是可迭代对象
lt = (i for i in range(10))
print(isinstance(lt, Iterable))
print(isinstance(lt, Iterator))