概述
在Python中,enumrate和range都常用于for循环中,enumrate函数用于同时循环列表和元素,而range()函数可以生成数值范围变化的列表,而能够用于for循环即都是可迭代的。
range概述
range是用于产生连续或者带步长的数字元素组成的列表,下面是一些基本使用及场景示例。
产生数字序列
# 产生0-9的序列for i in range(0, 10): print(i)print('-' * 40)# 产生0-20,步进(间隔)为3的数字元素组成的序列 for j in range(0, 21, 3): print(j)复制代码
示例结果:
0123456789----------------------------------------0369121518复制代码
利用range遍历修改列表
range
最多的使用场景就是修改循环修改列表,即利用range
构建列表的索引循环修改列表。
L = [1,2,3,4,5]for i in range(len(L)): L[i] = L[i] ** 2 print(L[i])复制代码
示例结果:
1491625复制代码
enumrate概述
当我们即想获取序列的索引和序列元素呢? 我们可以利用enumrate
同时迭代序列的索引和元素。
L = [1,2,3,4,5]for i, value in enumerate(L): print(i, '-->',value)复制代码
0 --> 11 --> 22 --> 33 --> 44 --> 5复制代码