咱们已经知道,能够直接做用于for
循环的数据类型有如下几种:函数
一类是集合数据类型,如list
、tuple
、dict
、set
、str
等;code
一类是generator
,包括生成器和带yield
的generator function。对象
这些能够直接做用于for
循环的对象统称为可迭代对象:Iterable
。generator
1.凡是可做用于for
循环的对象都是Iterable
类型;it
2.凡是可做用于next()
函数的对象都是Iterator
类型,它们表示一个惰性计算的序列;io
3.集合数据类型如list
、dict
、str
等是Iterable
但不是Iterator
,不过能够经过iter()
函数得到一个Iterator
对象。for循环
4.Python的for循环本质上就是经过不断调用next()函数实现的,例如:function
for x in [1, 2, 3, 4, 5]: