enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
enumerate方法的语法:
enumerate(sequence, [start=0]) # start= 是定义下标起始数字,默认是0。
【例1】试用enumerate方法
direction = ['east', 'south', 'west', 'north']
a = enumerate(direction)
print(a)
print(list(a))
运行结果:
【例2】应用:为文本文件每一行的末尾增加行号
with open(r'f:\a.txt', 'r', encoding='utf-8') as f:
lines = f.readlines()
lines = [line.rstrip() + ' #' + str(index) + '\n' for index, line in enumerate(lines, 1)] # 推导式生成列表
# str.rstrip()的作用是删除字符串末尾的指定字符(默认为空格)。这里我自己试了下,不指定,换行符也是可以删除的
# print(lines)
# print([lines[0].rstrip()])
with open(r'f:\b.txt', 'w', encoding='utf-8') as f:
f.writelines(lines)
运行结果: