python enumerate用法

来源:互联网 发布:金融网络投资排行 编辑:程序博客网 时间:2024/05/16 12:28

通常情况下我们在C++中遍历数组的方法为:

for(int i=0; i<list.length; i++){    //deal with list[i]}
python中我们可以这样遍历数组(字符串、元组、列表等):

for item in sequence:       process(item)
这种方式,我们只获得sequence中的值,没有获得索引

for index in range(len(sequence)):    process(sequence[index])
这种方式可以获得索引以及对应的值。但是这显得很繁琐。python其实提供了内置的enumerate函数可以同时获得索引和值,可以这样实现:

for index, key in enumerate(sequence):      process(index, key)
如果你想对sequence中的元素作逆置后处理,可以:

for index, key in enumerate(sequence[::-1]):     process(index, key)
举例说明:

>>> seq = 'hello'>>> for i,key in enumerate(seq):...     print 'seq[%d]=%s' % (i, key)... seq[0]=hseq[1]=eseq[2]=lseq[3]=lseq[4]=o
>>> seq = ['a','b','c','d']>>> for i,key in enumerate(seq):...     print 'seq[%d]=%s' % (i, key)... seq[0]=aseq[1]=bseq[2]=cseq[3]=d
>>> seq = ['a','b','c','d']>>> for i,key in enumerate(seq[::-1]):...     print 'seq[%d]=%s' % (i, key)... seq[0]=dseq[1]=cseq[2]=bseq[3]=a

1 0
原创粉丝点击