python的高级特性-迭代

迭代顾名思义就是循环,python中通过for...in来实现迭代,在python中迭代是只能作用在可迭代对象上的

1、list 的迭代 (列几个例子)
1)迭代value
>>> L = ["a","b","c","d","e","f"]
>>> for i in L:
>>> print(i)
>>> a
>>> b
>>> c
>>> d
>>> e
>>> f
2)迭代list的索引
如果想列出list的索引值,可以使用enumerate

In [141]: for i,value in enumerate(L):
...:     print(i,value)
...:
0 a
1 b
2 c
3 d
4 e
5 f

2.dict的迭代
1)迭代key

In [145]: d
Out[145]: {'张cc': '男', '李双双': '男'}
In [146]: for key in d:
 ...:     print(key)
 ...:
 ...:
李双双
张cc
  1. 迭代value
In [145]: d
Out[145]: {'张cc': '男', '李双双': '男'}
In [146]: for value in d.values():
 ...:     print(value)
 ...:
 ...:
男
男

3)迭代key 和value

 In [148]: for key,value in d.items():
 ...:     print(key,value)
 ...:
 ...:
 ...:
 ...:
李双双 男
张cc 男

3.字符串的迭代

In [149]: str = "abcdef"
In [150]: for i in str:
 ...:     print(i)
 ...:
a
b
c
d
e
f

通过以上的例子我们发现 只要是可迭代的对象,都可以使用for...in 来进行迭代,那么什么如何知道是否是迭代对象呢

4.通过collections模块的Iterable判断是否是可迭代对象

In [151]: from collections import Iterable
In [152]: isinstance('abc', Iterable)
Out[152]: True

你可能感兴趣的:(python的高级特性-迭代)