enumerate的用法:
for index,value in enumerate(list,start):
print(index,value)

for 后面的index表示索引值,value表示要打印元素的值。list表示要遍历的对象,start表示索引开始的数值。

其中list可以加切片list[x:y],表示只取list里某个区间的值,比如前10个 list[:10] (虽然右边取不到,但是列表从0开始计数)

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

>>> seq=range(5)
>>> enumerate(seq)
<enumerate object at 0x00000000030D5480>>>> list1 = [('a', 'A'), ('b', 'B'), ('c', 'C')]
>>> for x,y in enumerate(list1,2):print(x,y)2 ('a', 'A')
3 ('b', 'B')
4 ('c', 'C')>>> for x,(y,z) in enumerate(list1[:2]):print(y,z)a A
b B>>> for x,(y,z) in enumerate(list1):print(y,z)a A
b B
c C
>>> >>> for x,(y,z) in enumerate(list1):print(x,y,z)0 a A
1 b B
2 c C>>> for x,(y,z) in enumerate(list1,2):print(x,y,z)2 a A
3 b B
4 c C
>>> 比较难的用法:>>>
list = [[['a'],['b']],[['c'],['d']],[['e'],['f']]
]
>>> # 两种方式遍历 遍历:从第一个找到最后一个
>>> for x in list:for y in x:for z in y:print(z)a
b
c
d
e
f#  这个是上一个的enumerate用法
>>> for x, [[y], [z]] in enumerate(list):print(y, z)a b
c d
e f
>>>  for x, [[y], [z]] in enumerate(list):print(x,y, z)SyntaxError: unexpected indent
>>> for x, [[y], [z]] in enumerate(list):print(x,y, z)0 a b
1 c d
2 e f
>>> for x, y in enumerate(list):print(x,y)0 [['a'], ['b']]
1 [['c'], ['d']]
2 [['e'], ['f']]
>>> 小心机>>> for i,j in enumerate({'a','b'}):print(i,j)0 b
1 a
>>> for i,j in enumerate(['a','b']):print(i,j)0 a
1 b
>>> 补充
如果要统计文件的行数,可以这样写:count = len(open(filepath, 'r').readlines())
1
这种方法简单,但是可能比较慢,当文件比较大时甚至不能工作。可以利用enumerate():count = 0
for index, line in enumerate(open(filepath,'r')): count += 1或者用
>>> count=0
>>> for line in open(r'C:\Users\Administrator\Desktop\20190506biji.txt','r'):count+=1print(count)或者
>>> for index, line in enumerate(open(r'C:\Users\Administrator\Desktop\20190506biji.txt','r')):count+=1print(index, line)其它练习:
>>> s=[(1,2,),(4,2),(8,4),(3,2)]
>>> for x in s :print(x)(1, 2)
(4, 2)
(8, 4)
(3, 2)
>>> for x,y in s :print(x,y)1 2
4 2
8 4
3 2>>> for i ,x in enumerate(s):print(i,x)0 (1, 2)
1 (4, 2)
2 (8, 4)
3 (3, 2)
>>> for i ,x in enumerate(s):print(x)(1, 2)
(4, 2)
(8, 4)
(3, 2)
>>>

参考:
https://jingyan.baidu.com/article/a3aad71a3fff5db1fb00968d.html
https://blog.csdn.net/churximi/article/details/51648388
https://blog.csdn.net/qq_39610888/article/details/80869566

enumerate的用法:相关推荐

  1. python中enumerate在for循环中用法_python中enumerate的用法实例解析

    在python中enumerate的用法多用于在for循环中得到计数,本文即以实例形式向大家展现python中enumerate的用法.具体如下: enumerate参数为可遍历的变量,如 字符串,列 ...

  2. python enumerate_python中enumerate的用法实例解析

    在python中enumerate的用法多用于在for循环中得到计数,本文即以实例形式向大家展现python中enumerate的用法.具体如下: enumerate参数为可遍历的变量,如 字符串,列 ...

  3. python内置函数 enumerate()的用法

    python内置函数 enumerate()的用法 enumerate()对于一个可迭代的(iterable)/可遍历的对象(如列表.字符串),enumerate将其组成一个索引序列(元组),利用它可 ...

  4. enumerate()函数用法

    enumerate 函数用于遍历序列中的元素以及它们的下标: 转载于:https://www.cnblogs.com/ConnorShip/p/9754472.html

  5. Python中的enumerate的用法

    enumerate(iterator, start=0),用迭代器iterator构造另一个迭代器,这个新的迭代器中的元素是一个2元素元组,元组的第一项是序号(序号从start开始),第二项是iter ...

  6. python enumerate函数用法

    http://www.cnblogs.com/linjiqin/p/4228896.html enumerate函数用于遍历序列中的元素以及它们的下标 i = 0 seq = ['one', 'two ...

  7. python enumerate函数_Python中enumerate函数用法详解

    enumerate函数用于遍历序列中的元素以及它们的下标,多用于在for循环中得到计数,enumerate参数为可遍历的变量,如 字符串,列表等 一般情况下对一个列表或数组既要遍历索引又要遍历元素时, ...

  8. Python常用内置函数enumerate()详细用法介绍

    enumerate(iterable, start=0) 返回一个枚举对象.iterable 必须是一个序列,或一个能迭代的对象.返回一个元组,里面包含一个计数值(从 start 开始,默认为 0)和 ...

  9. enumerate在python中是什么意思_python中enumerate的用法实例解析

    python 怎么使用enumerate先出一个题目:1.有一 list= [1, 2, 3, 4, 5, 6] 请打印输出: 0, 1 1, 2 2, 3 3, 4 4, 5 5, 6 打印输出, ...

最新文章

  1. Redis入门教程(一)
  2. sublime text3中文文件名显示为框框,怎么解决
  3. 中等职业教育计算机教学案例范文,职业中学计算机教学案例
  4. JMM主内存和工作内存运行流程图
  5. FFLIB网络框架单线程0.0.1版本-epoll_socket
  6. 如何在Twitter上阻止令人讨厌的“今日热门新闻@yourname”垃圾邮件
  7. centos uwsgi自动调用python2环境,指定uwsgi调用版本
  8. 「面试」美团肝了我30+问题
  9. oracle sysaux表空间不足,sysaux 表空间不足问题处理
  10. 江淮大众正式更名,今日盘中涨停!
  11. LeetCode二分法---C语言
  12. 中国大数据市场规模分析及预测
  13. Cisco公司的CAR流量控制策略
  14. Windows使用ffmpeg教程
  15. 65位高校教师接龙晒工资!给打算入高校的研究生们参考!
  16. 最大流最小割经典例题_最大流最小割基本
  17. DICOM 开源工具汇总
  18. 如何构建稳健的品期carry组合
  19. c++编程迷宫小游戏
  20. Flutter Sliver滚动组件

热门文章

  1. C++boost库中sp_counted_impl_x实现解析
  2. 直播的用户体验体系与质量监控方案
  3. linux777是什么权限,linux设置777权限意思
  4. 稀里糊涂的解决了 cuda 和cudnn的安装以及conda安装pytorch出现的torch.cuda.is_available()为false的问题
  5. 小红书怎么涨粉最快?小红书涨粉最快的方法分享
  6. Eclipse的快捷键设置及使用
  7. eclipse快捷键的设置和使用
  8. Java线程池实现多消费者批量处理队列消息
  9. 【山外笔记-计算机网络·第7版】第10章:计算机网络重要概念
  10. createfile调用失败_Java NIO Files.createFile()以NoSuchFileException失败