zoukankan      html  css  js  c++  java
  • 【python】python中的enumerate()函数【笔记】

    结合实例来理解比较好,网上找了一下这个enumerate用法,自己也记录一下加深印象

    看一下相关链接:

    链接1:http://www.cnblogs.com/danielStudy/p/6576040.html

    链接2:http://blog.csdn.net/churximi/article/details/51648388

    • enumerate函数说明:
      • 函数原型:enumerate(sequence, [start=0])  #第二个参数为指定索引
      • 功能:将可循环序列sequence以start开始分别列出序列数据和数据下标
      • 即对一个可遍历的数据对象(如列表、元组或字符串),enumerate会将该数据对象组合为一个索引序列,同时列出数据和数据下标
    • 举例说明:
      • 存在一个sequence,对其使用enumerate将会得到如下结果:
        • start        sequence[0]
        • start+1  sequence[1]
        • start+2    sequence[2]......
    • 具体例子:

    1、第一个实例,打印输出索引与value值

    复制代码
     1 >>> product = [
     2 ...         "Mac pro",
     3 ...         "iPhone",
     4 ...         "iWatch"
     5 ...     ]
     6 >>> for index,item in enumerate(product):
     7 …          print(index,item)
     8 >>>
     9 
    10 得到以下结果 
    11 0     Mac pro
    12 1    iPhone
    13 2    iWatch

    14 也可以使用enumerate函数的第二个参数:
    15 >>> for index,item in enumerate(product,1)://第二个参数表示下标开始的位置,取值为1即表示下标从1开始计算,默认从0开始
    16  …          print(index,item)
    17 >>>
    18 得到以下结果
    19 1  Mac pro
    20 2 iPhone
    21 3 iWatch
    复制代码

    2、第二个实例

    #列表
    product = ["Mac pro", "iPhone", "iWatch"]
    for index, item in enumerate(product):
        print(index, item)
        
    #列表
    list = [1, 2, 3, 4, 5, 6]
    list[::-1]
    for index, item in enumerate(list):
        print(index, item)
    
    #字符串
    for i, j in enumerate('abcde'):
        print(i, j)
        
    #数组
    for i, j in enumerate(('a', 'b', 'c', 'd', 'e')):
        print(i, j)
    
    #字典
    for i, j in enumerate({'a':1, 'b':2}):
        print(i, j)

    3、第三个实例:统计文件的行数

    #如果要统计文件的行数,可以这样写:
    count = len(open(filepath, 'r').readlines())
    #这种方法简单,但是可能比较慢,当文件比较大时甚至不能工作。
    
    #可以利用enumerate():
    count = 0
    for index, line in enumerate(open(filepath,'r')): 
        count += 1
  • 相关阅读:
    实用机器学习 跟李沐学AI
    Explicitly drop temp table or let SQL Server handle it
    dotnettransformxdt and FatAntelope
    QQ拼音输入法 禁用模糊音
    (技术八卦)Java VS RoR
    Ruby on rails开发从头来(windows)(七)创建在线购物页面
    Ruby on rails开发从头来(windows)(十三)订单(Order)
    Ruby on rails开发从头来(windows)(十一)订单(Order)
    新员工自缢身亡,华为又站到了风口浪尖
    死亡汽油弹(Napalm Death)乐队的视频和来中国演出的消息
  • 原文地址:https://www.cnblogs.com/yizhenfeng/p/7596113.html
Copyright © 2011-2022 走看看