本文共 795 字,大约阅读时间需要 2 分钟。
在解析mysqlbinlog dump出来的binlog的时候学习了一个函数 --enumerate。官方的定义如下:
def enumerate(collection,N=0): 'Generates an indexed series: (0,coll[0]), (1,coll[1]) ...' i = N it = iter(collection) while 1: yield (i, it.next()) i += 1
N 是索引起始值 比如 enumerate(list,2) 索引是从2 开始。
通常我们需要遍历序列如 字符串,字典,列表,也要遍历其索引时,我们会使用for 循环来解决for i in range (0,len(list)): print i ,list[i]使用内置enumerrate函数会有更加直接,优美的做法
for idx,name in enumerate(list)): print idx,name如何使用该函数
#coding=utf-8List = ['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 开始的。
转载地址:http://enmhx.baihongyu.com/