Chinaunix首页 | 论坛 | 博客
  • 博客访问: 783336
  • 博文数量: 231
  • 博客积分: 3217
  • 博客等级: 中校
  • 技术积分: 2053
  • 用 户 组: 普通用户
  • 注册时间: 2011-07-04 12:01
文章分类

全部博文(231)

文章存档

2015年(1)

2013年(10)

2012年(92)

2011年(128)

分类: LINUX

2012-06-05 10:31:07

python enumerate 用法
python enumerate 用法 | 在for循环中得到计数
参数为可遍历的变量,如 字符串,列表等;
返回值为enumerate类:
import string
s = string.ascii_lowercase
e = enumerate(s)
print s
print 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。
enumerate 实战
line 是个 string 包含 0 和 1,要把1都找出来:
#方法一
def read_line(line):
    sample = {}
    n = len(line)
    for i in range(n):
        if line[i]!='0':
            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'))
 
阅读(910) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~