Python enumerate总结

enumerate()说明

  • enumerate()是python的内置函数
  • enumerate在字典上是枚举、列举的意思
  • 对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值
  • enumerate多用于在for循环中得到计数

实例

>>> goods = [['appple',70999],['banaba',2000],['orange',10000]]
>>> type(goods)
<type 'list'>
>>> for index,item in enumerate(goods):
...     print index,item
... 
0 ['appple', 70999]
1 ['banaba', 2000]
2 ['orange', 10000]
>>> for index,item in enumerate(goods):
...     print index,item[0],item[1]
... 
0 appple 70999
1 banaba 2000
2 orange 10000
>>> 

## enumerate可以有第二个参数
>>> for index,item in enumerate(goods,2):
...     print index,item[0],item[1]
... 
2 appple 70999
3 banaba 2000
4 orange 10000
>>> 

特殊说明

文件大小为83M,用python计算文件行数

实际脚本

#!/usr/bin/env python
#-*- coding:utf8 -*-

file = '/usr/local/tomcat/logs/appLog/appLog.2016-11-08.log'


## 方式一,对于文件很大的时候比较慢
#count = len(open(file,'r').readlines())
#print count


## 方式二,相对比较高效
count = 0
for index, line in enumerate(open(file,'r')):
    count += 1

print count

方式一效果

root@pts/0 # time python /tmp/test.py 
56733

real    0m1.973s
user    0m0.051s
sys 0m0.248s

方式二效果

root@pts/0 # time python /tmp/test.py 
56733

real    0m0.076s
user    0m0.034s
sys 0m0.037s
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 内置函数Python解释器内置了许多功能和类型,总是可用的。他们是按字母顺序列在这里。 abs(x)返回一个数的绝...
    uangianlap阅读 5,034评论 0 0
  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 12,229评论 1 118
  • 教程总纲:http://www.runoob.com/python/python-tutorial.html 进阶...
    健康哥哥阅读 6,261评论 1 3
  • Since Jan.26th,2016 1、ubuntu 下运行 python 的几种方式 在 terminal...
    Rco阅读 7,410评论 0 2
  • python学习笔记 声明:学习笔记主要是根据廖雪峰官方网站python学习学习的,另外根据自己平时的积累进行修正...
    renyangfar阅读 8,232评论 0 10