ITPub博客

首页 > 数据库 > MySQL > 【Python】内置函数 enumerate

【Python】内置函数 enumerate

原创 MySQL 作者:杨奇龙 时间:2016-02-23 22:38:46 0 删除 编辑
介绍
在解析mysqlbinlog dump出来的binlog的时候学习了一个函数 --enumerate。官方的定义如下:
  1. def enumerate(collection,N=0):
  2.     'Generates an indexed series: (0,coll[0]), (1,coll[1]) ...'
  3.     i = N
  4.     it = iter(collection)
  5.     while 1:
  6.         yield (i, it.next())
  7.         i += 1
N 是索引起始值 比如 enumerate(list,2) 索引是从2 开始。
通常我们需要遍历序列如 字符串,字典,列表,也要遍历其索引时,我们会使用for 循环来解决 
  1. for i in range (0,len(list)):
  2.        print i ,list[i]
使用内置enumerrate函数会有更加直接,优美的做法
  1. for idx,name in enumerate(list)):
  2.     print idx,name
如何使用该函数
  1. #coding=utf-8
    List = ['a', 'b', 'c']
    print (list(enumerate(List)))
    Tuple = ('youzan', 'SAAS', 'work','Mac')
    print(list(enumerate(Tuple)))
    Dict = {"city":"HANGZHOU", 'company':"youzan", 'dba':'yangyi'}
    print(list(enumerate(Dict, 2)))
    Str = 'YOUZAN!'
    print(list(enumerate(Str, 1)))
运行结果


注意 Dict 和Str 使用 enmerate 函数的起始值分别从2  1 开始的。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22664653/viewspace-1993374/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
MySQL DBA NoSQL DEVOPS

注册时间:2009-10-07

  • 博文量
    1026
  • 访问量
    7652201