PHP前端开发

python学习enumerate实践用法介绍

百变鹏仔 3小时前 #Python
文章标签 python

A new built-in function, enumerate() , will make certain loops a bit clearer. enumerate(thing) , whereis either an iterator or a sequence, returns a iterator that will return (0,[0]) , (1,[1]) , (2,[2]) , and so forth.

A common idiom to change every element of a list looks like this:

用法:在同时需要index 和 value 值得时候可以使用

line = [1,3,'dfd','jdjfjd']for i in range(len(line)):    item = line[i]    print(i,"--->",item)#运行结果:---> 1---> 3---> dfd---> jdjfjd

等价于下列代码:

line = [1,3,'dfd','jdjfjd']for i,item in enumerate(line):    print(i,"-------",item)

enumerate 实战

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

#方法一

def read_line(line):

    sample = {}

    n = len(line)

    for i in range(n):

        if line[i]!='0':

立即学习“Python免费学习笔记(深入)”;

            sample[i] = int(line[i])

    return sample

 

#方法二

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'))