什么是迭代呢?如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration)。在Python中,迭代是通过for ... in来完成的,例如:
Python 高级特性之迭代_第1张图片
因为dict的存储不是按照list的方式顺序排列,所以,迭代出的结果顺序很可能不一样,默认字典迭代的是key,如果要迭代value,可以用for value in d.values() 例如:
Python 高级特性之迭代_第2张图片
如果要同时迭代key和value,可以利用 for key,value in d.items() 例如:
Python 高级特性之迭代_第3张图片
同样字符串也是可以迭代的,例子如图
Python 高级特性之迭代_第4张图片
如何判断一个对象是可迭代呢?方法是通过collections模块的Iterable类型判断:
Python 高级特性之迭代_第5张图片
Python内置的enumerate函数可以把一个list变成索引-元素对,这样就可以在for循环中同时迭代索引和元素本身:
Python 高级特性之迭代_第6张图片
for循环里,同时可以两个变量,在Python里是很常见的,比如下面的代码:
Python 高级特性之迭代_第7张图片