可迭代对象(iterable)
具有__iter__方法的并且返回迭代器的成为可迭代对象
list = [11.22.33]
迭代器(iterator)
具有__next__方法,并逐一向后取值称为迭代器
iter(list )
obj = iter(list) # iter(list) = list.__iter__
obj.__next__()
生成器(generator)
既拥有__iter__方法,也拥有__next__方法
生成器同时也可以说是迭代器
函数中包含yield会返回生成器