欢迎访问宙启技术站
智能推送

Python中如何使用enumerate()函数同时遍历列表的下标和元素?

发布时间:2023-06-19 21:22:36

enumerate()函数是python内置的函数之一,用于返回一个枚举对象,可以同时获取元素的下标和对应的元素。如果一个列表中需要遍历其中的所有元素,有时候需要得到每个元素的下标和元素的值。这种情况下,可以使用enumerate()函数。

语法格式:

enumerate(iterable, start=0)

其中, 个参数iterable表示可迭代对象,最常见的可迭代对象包括列表、元组、字符串等;第二个参数start表示开始的下标,默认值为0。

返回值:

返回的是一个包含元素下标和对应的元素的枚举对象,枚举对象可通过list()函数转换为列表。

使用方式:

for index, element in enumerate(iterable, start=0):

其中,index表示元素的下标,element表示对应的元素。

先看一个简单的例子:

lst = ['apple', 'orange', 'banana']

for index, element in enumerate(lst):

    print(index, element)

运行结果:

0 apple

1 orange

2 banana

这个例子中,我们首先定义了一个列表lst,然后通过for循环实现了列表的遍历。在for循环中,我们使用了enumerate()函数,同时对列表中的元素进行了遍历,通过其中的两个变量index和element分别表示了元素的下标和对应的元素。遍历完成后,将元素的下标和对应的元素通过print函数一一输出。

对于enumerate()函数而言,还可以使用start参数来指定下标开始的位置,例如:

lst = ['apple', 'orange', 'banana']

for index, element in enumerate(lst, start=1):

    print(index, element)

运行结果:

1 apple

2 orange

3 banana

这个例子中,在enumerate()函数中加入了start参数,表示元素的下标从1开始。在循环输出每个元素的下标时,也从1开始,而不是从0开始。

除了for循环外,我们还可以将enumerate()函数的返回值转换为列表。例如:

lst = ['apple', 'orange', 'banana']

enum_lst = list(enumerate(lst))

print(enum_lst)

运行结果:

[(0, 'apple'), (1, 'orange'), (2, 'banana')]

这个例子中,我们还是通过enumerate()函数获取了列表lst的下标和对应的元素,将结果赋值给了一个枚举对象enum_lst。最后使用list()函数将枚举对象转换为一个包含元素下标和对应元素的列表输出。

需要注意的是,在使用enumerate()函数时,其返回的是一个枚举对象而不是一个列表。此时,如果需要将枚举对象转换为列表,需要调用list()函数进行转换。

同时,可以通过使用range()函数和len()函数的配合,实现对列表的遍历和下标的获取。

lst = ['apple', 'orange', 'banana']

for i in range(len(lst)):

    print(i, lst[i])

运行结果:

0 apple

1 orange

2 banana

这个例子中,我们使用了range()函数和len()函数,结合for循环,实现了对列表的遍历和每个元素的下标获取。在循环体内,使用i来遍历列表。通过i和lst[i]分别获取元素的下标和对应的元素。

需要特别注意的是,虽然使用range()函数和len()函数的方法也可以获取列表的下标和元素,但其还需要配合循环实现,语句量相对较多,同时代码可读性较差,因此建议使用enumerate()函数实现。