enumerate用法总结-Python 3
2016-12-30 21:49
543 查看
enumerate()说明
enumerate()是python的内置函数enumerate在字典上是枚举、列举的意思
对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值
enumerate多用于在for循环中得到计数
enumerate()使用
如果对一个列表,既要遍历索引又要遍历元素时,首先可以这样写:# _*_ coding: utf-8 _*_ # __Author: "LEMON" list = ['This', 'is', 'a', 'test'] for i in range(len(list)): print(i, list[i])
上述方法有些累赘,利用enumerate()会更加直接和优美:
# _*_ coding: utf-8 _*_ # __Author: "LEMON" list = ['This', 'is', 'a', 'test'] #for i in range(len(list)): # print(i, list[i]) for index, item in enumerate(list): print(index, item) >>> 0 This 1 is 2 a 3 test
enumerate还可以接收第二个参数,用于指定索引起始值,如:
# _*_ coding: utf-8 _*_ # __Author: "LEMON" list = ['This', 'is', 'a', 'test'] #for i in range(len(list)): # print(i, list[i]) #for index, item in enumerate(list): for index, item in enumerate(list,1): print(index, item) >>> 1 This 2 is 3 a 4 test
补充
如果要统计文件的行数,可以这样写:count = len(open(filepath, 'r').readlines())
这种方法简单,但是可能比较慢,当文件比较大时甚至不能工作。
可以利用enumerate():
# _*_ coding: utf-8 _*_ # __Author: "LEMON" count = 0 for index, line in enumerate(open('test01.txt','r')): count = count + 1 print(count)
examples:
# _*_ coding: utf-8 _*_ # __Author: "LEMON" week = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] weekend = ['Sat', 'Sun'] week.extend(weekend) for i,j in enumerate(week,1): print(i, j)
运行结果:
>>> 1 Mon 2 Tue 3 Wed 4 Thu 5 Fri 6 Sat 7 Sun
相关文章推荐
- python科学计算
- python 简单使用(1)
- 1-python图像处理之PIL,pylab
- 基于SVM的股票预测 Python实现 附Github
- 64位win7安装Python3.5、Numpy和matplotlib的链接
- Python3模块numpy的安装过程
- python之图片文本识别
- python批量处理图片命名问题
- 理解Python的解释型与可移植
- Ubuntu14.04 + cuda8.0 + Anaconda3 (python3.5)下编译caffe
- python3字典排序
- python---模拟登陆知乎
- Python 练习册,每天一个小程序----------001使用 Python 如何生成多位随机数
- 学习python的第四十六天-第八章 面向对象
- python除法
- python发送邮件及附件
- 使用faster rcnn训练自己的模型
- Python处理Thread的方式start, stop回收
- numpy 维度与轴的问题
- 外部系统调用AWS ML服务的接口 - Python