基本概念与语法
如果给定一个list
或者tuple
,我们可以通过for
循环来遍历这个list货tuple,这种遍历我们称为迭代(lteration)
在python中,迭代是通过for ... in
来完成的。
>>> l = [1,2,3]
>>> l
[1, 2, 3]
>>> for x in l:
... print(x)
...
1
2
3
Python的for
循环不仅可以用在list获tuple上,还可以作用在其它可迭代对象上。只要是可迭代对象,无论有无下标,都可以迭代。比如dict
>>> d = {'Tom':18,'Andy':19,'David':20}
>>> for x in d:
... print(x)
...
Tom
Andy
David
注:因为dict的存储顺序不是按照list的方式排列,所以迭代出的结果顺序可能是不一致的!
默认情况下,dict迭代的是key。如果要迭代value,可以使用for value in d.values()
,如果要同时迭代key和value,可以用for k,v in d.items()
如何判定对象是否可迭代
通过collections
模块和lterable
类型判断
>>> from collections import Iterable
>>> isinstance('abc',Iterable)
True
>>> isinstance([1,2,3],Iterable)
True
>>> isinstance(123,Iterable)
False
>>>