python enumrate使用
2018-02-03 20:47
288 查看
新接触了一个函数 enumrate ,很多情况下我们想获得可迭代的容器(例如dict、list、tuple等)元素的时候,想同时获得一个序号用以他用。
代码常常写成这个样子
如果是dict,那么会写成这样子
但功能有了,美观较差
这时候enumrate就该出场了。enumrate函数可以同时返回元素和索引号。上面两个例子,可以写成这个样子
而输出为
idx=0, content=apple
idx=1, content=dell
idx=2, content=hp
idx=3, content=ibm
而dict可以写成这样子
输出为
key=banana,idx=0
key[o]=orange,idx=1
key[a]=apple,idx=2
[b]另外学习到其他博主的用法
如果要统计文件的行数,可以这样写:
这种方法简单,但是可能比较慢,当文件比较大时甚至不能工作。
可以利用enumerate():
代码常常写成这个样子
list_a = ["apple", "dell", "hp", "ibm"] for idx in range(len(list_a)): print("idx={0}, content={1}".format(idx, list_a[idx]))
如果是dict,那么会写成这样子
dict_a={"a":"apple","b":"banana","o":"orange"} idx = 0 for it in dict_a: idx = idx + 1 print("key[{0}]={1},idx={2}".format(it, dict_a[it], idx))
但功能有了,美观较差
这时候enumrate就该出场了。enumrate函数可以同时返回元素和索引号。上面两个例子,可以写成这个样子
list_a = ["apple", "dell", "hp", "ibm"] for idx,val in enumerate(list_a): print("idx={0}, content={1}".format(idx, val))
而输出为
idx=0, content=apple
idx=1, content=dell
idx=2, content=hp
idx=3, content=ibm
而dict可以写成这样子
for idx,key in enumerate(dict_a): print("key[{0}]={1},idx={2}".format(key,dict_a[key],idx))
输出为
key=banana,idx=0
key[o]=orange,idx=1
key[a]=apple,idx=2
[b]另外学习到其他博主的用法
如果要统计文件的行数,可以这样写:
count = len(open(filepath, 'r').readlines())
这种方法简单,但是可能比较慢,当文件比较大时甚至不能工作。
可以利用enumerate():
count = 0 for index, line in enumerate(open(filepath,'r')): count += 1
相关文章推荐
- python技巧31[python中使用enum][转]
- python技巧31[python中使用enum]
- python技巧31[python中使用enum]
- python技巧31[python中使用enum]
- python里使用enum库创建枚举类型
- python技巧31[python中使用enum](转)
- 在 Python中使用 cout << 'Hello,world!' << endl
- JDK 1.5 特性使用实例4--Enum
- python 进行多线程编程,使用Semaphore控制线程数
- Python模块之chardir: 使用chartdir生成各种图表
- ctypes: 使用python调用C编写的动态链接库
- Windows下使用Python通过ODBC/ADO访问数据库
- 关于在组件GIS开发中使用Python的一点补充说明
- 使用minidom来处理XML的示例(Python 学习)(转载)
- 在IE中使用Python作为开发脚本
- 如何使用Python发送带附件的邮件
- Python使用Com组件及Access查询分析类实现
- 使用 python 破除网页限制
- 第一次使用python
- Python使用Com组件及Access查询分析类实现