A new built-in function, enumerate() , will make certain loops a bit clearer. enumerate(thing) , where thing is either an iterator or a sequence, returns a iterator that will return (0, thing [0]) , (1, thing [1]) , (2, thing [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) #运行结果:
0 ---> 1
1 ---> 3
2 ---> dfd
3 ---> 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':
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'))

最新文章

  1. LINUX 编译安装 PHP 环境
  2. UGUI事件解析
  3. C++中的结构体
  4. 2014年3月份第4周51Aspx源码发布详情
  5. LoadRunner在移动端性能测试的应用
  6. Objective-C常用类型、对象、方法
  7. Thread和ExecutorService(一)
  8. MapReduce寻找共同好友
  9. log4j2.xml日志文件设置文件路径
  10. python基础面试常见题
  11. java注释讲解
  12. day_6.8 py 网络编程
  13. 20155332 补交ch12课下作业
  14. ng-深度学习-课程笔记-8: 超参数调试,Batch正则(Week3)
  15. 想转行学Java,却又担心自己半路出家成不了大牛
  16. sql注入及事务
  17. Python全栈day18(迭代器协议和for循环工作机制)
  18. Spring入门4.AOP配置深入
  19. 主流服务器虚拟化技术简单使用——KVM(一)
  20. python网站

热门文章

  1. 说说Makefile那些事儿
  2. 前端CSS预处理器Sass
  3. HTML5 语义元素(二)文本内容
  4. Bootstrap 模态框(Modal)插件
  5. 通过三次优化,我将gif加载优化了16.9%
  6. MySQL设置字段的默认值为当前系统时间
  7. VS2015常用快捷键总结
  8. python 数据类型---文件二
  9. 手机游戏渠道SDK接入工具项目分享(二)万事开头难
  10. Windows cmd 长时间不输出新内容 直到按下ctrl + c 取消或者回车的解决办法