可迭代对象(Iterable):可直接作用于for循环的对象统称为可迭代对象。
一类是集合数据类型,如 list、tuple、dict、set、str 等;
一类是 generator,包括生成器和带yield 的generator function。
迭代器(Iterator):可以被next()函数调用并不断返回下一个值的对象称为迭代器。
特点:1、迭代是访问集合元素的一种方式。
2、迭代器是一个可以记住遍历的位置的对象。
3、迭代器只能往前不会后退。
4、迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。
可迭代的不一定是迭代器,迭代器一定可以迭代。
生成器也是迭代器。
iter()函数:可以将list、tuple、dict、set、str等 Iterable 变成 Iterator
a = [1,2,3,4,5]
it = iter(a)
next(it)