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

Python中enumerate()函数用法详解

发布时间:2023-06-29 14:08:37

enumerate()函数是python内置函数之一,用于将一个可遍历的数据对象(如列表、字符串、元组)组合为一个索引序列,同时列出数据和数据下标,返回一个enumerate对象。

enumerate()函数的基本用法如下:

enumerate(iterable, start=0)

其中,iterable是一个可迭代对象,start是指定开始下标的整数值,默认为0。

下面以实例为例,详细介绍enumerate()函数的用法:

1. 基本用法

fruits = ['apple', 'banana', 'orange']
for index, fruit in enumerate(fruits):
    print(index, fruit)

输出结果为:

0 apple
1 banana
2 orange

在上面的代码中,将列表fruits作为可迭代对象传入enumerate函数,函数会返回一个可迭代的enumerate对象。通过for循环遍历这个对象,每次取出一个元素,元素包括索引和值,分别用index和fruit来接收,并打印出来。

2. 设置开始下标

fruits = ['apple', 'banana', 'orange']
for index, fruit in enumerate(fruits, start=1):
    print(index, fruit)

输出结果为:

1 apple
2 banana
3 orange

在上面的代码中,通过start参数指定了开始下标为1,所以打印出的索引从1开始。

3. 结合zip函数使用

enumerate函数经常与zip函数结合使用,用于同时遍历两个列表并获取对应的索引和值。

fruits = ['apple', 'banana', 'orange']
prices = [1.2, 2.3, 3.4]
for index, (fruit, price) in enumerate(zip(fruits, prices), start=1):
    print(index, fruit, price)

输出结果为:

1 apple 1.2
2 banana 2.3
3 orange 3.4

在上面的代码中,使用zip函数将两个列表fruits和prices打包成一个可迭代对象,然后再传入enumerate函数中进行遍历,同时获取索引和值。

4. 枚举字符串

string = 'hello'
for index, char in enumerate(string):
    print(index, char)

输出结果为:

0 h
1 e
2 l
3 l
4 o

在上面的代码中,将字符串'hello'作为可迭代对象传入enumerate函数,遍历每个字符,并获取相应的索引和字符值。

总结:

enumerate()函数是一个非常方便的函数,可以让我们在遍历可迭代对象时同时获取索引和值,避免手动维护索引。它的基本用法就是传入一个可迭代对象,返回一个enumerate对象,然后通过for循环遍历这个对象,每次取出一个元素,包括索引和值。如果需要设置开始下标,可以通过start参数来实现。