python函数每日一讲 - enumerate函数

2017-05-30 17:14:21
enumerate函数用于遍历序列中的元素以及它们的下标。enumerate函数说明:函数原型:enumerate(sequence, [start=0])功能:将可循环序列seq

enumerate函数用于遍历序列中的元素以及它们的下标。

 

enumerate函数说明:

函数原型:enumerate(sequence, [start=0])

功能:将可循环序列sequence以start开始分别列出序列数据和数据下标

即对一个可遍历的数据对象(如列表、元组或字符串),enumerate会将该数据对象组合为一个索引序列,同时列出数据和数据下标。

 

举例说明:

存在一个sequence,对其使用enumerate将会得到如下结果:

start        sequence[0]

start+1  sequence[1]

start+2    sequence[2]......

 

适用版本:

Python2.3+

Python2.x

 

注意:在python2.6以后新增了start参数

 

英文解释:

Return an enumerate object. sequence must be a sequence, an iterator, or some other object which supports iteration. The next() method of the iterator returned by enumerate() returns a tuple containing a count (from start which defaults to 0) and the values obtained from iterating over sequence。

 

代码实例:

enumerate参数为可遍历的变量,如 字符串,列表等; 返回值为enumerate类。

import strings = string.ascii_lowercasee = enumerate(s)print sprint list(e)

 

输出为:

abcdefghij[(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd'), (4, 'e'), (5, 'f'), (6, 'g'), (7, 'h'), (8, 'i'), (9, 'j')]

 

在同时需要index和value值的时候可以使用 enumerate。

该实例中,line 是个 string 包含 0 和 1,要把1都找出来:

def xread_line(line):  return((idx,int(val)) for idx, val in enumerate(line) if val != '0') print read_line('0001110101')print list(xread_line('0001110101'))

 

相关词搜索:

上一篇:python函数每日一讲 - int()函数
下一篇:最后一页