一、容器
定义:容器是一种把多个元素组织在一起的数据结构,其中元素可以迭代获取
例:list、set、dict、tuple、str等
二、可迭代对象
定义:拥有__iter__方法叫作可迭代对象(可用for循环进行迭代)
容器都是可迭代对象、打开的文件也是
三、迭代器
1:定义:一个实现了迭代器协议的容器对象
2:一个基本函数:next(),返回迭代的下一个元素值;超界要抛出StopIteration异常
3:一个方法:__iter__方法:返回迭代器自身
4:特点:迭代器的元素被读取后将释放掉,可以节省内容空间
四、生成器
定义:一种延时产生结果的工具
特点:不会一次性输出所有结果,可以节省内存、降低处理时间、降低对机器的要求
生成器函数:用def定义,以yield返回结果
生成器表达式:一个列表推导式的生成器版本,将推导式放在()表示