Python中的Enumerate()函数:循环、元组、字符串(示例)

Python enumerate()是什么?

Python Enumerate() 是 Python 库中提供的一个内置函数。它接受给定的输入作为集合或元组,并将其作为 enumerate 对象返回。Python Enumerate() 命令为可迭代对象中的每个项目添加一个计数器,并返回一个 enumerate 对象作为输出字符串。

Python enumerate() 的语法

enumerate(iterable, startIndex)

参数

三个参数是

  • 可迭代对象:一个可以被循环的对象。
  • 起始索引:(可选) 计数将从循环中第一个项目的 startIndex 值开始,并为下一个项目递增,直到到达循环末尾。

但是,如果未指定 startIndex,计数将从 0 开始。

返回值

它将返回一个可迭代对象,其中包含输入给迭代器对象的每个项目的计数。

Python enumerate() 示例

Enumerate 方法为 enumerate 列表中的每个项目提供一个自动计数器/索引。第一个索引值从 0 开始。您还可以通过使用 enumerate 中的可选参数 startIndex 来指定 startindex。
示例
在下面的代码中,mylist 是传递给 Python enumerate 函数的列表。list() 函数用于显示 enumerate Python 输出。

注意:没有使用 startIndex,因此第一个项目的索引将从 0 开始。

enumerate 的输出将如下所示:

(0, item_1), (1, item_2), (2, item_3), … (n, item_n)

文件:python_enumerate.py

mylist = ['A', 'B' ,'C', 'D']
e_list = enumerate(mylist)
print(list(e_list))

输出

[(0, 'A'), (1, 'B'), (2, 'C'), (3, 'D')]

在带有 startIndex 的列表中使用 enumerate()

在下面的示例中, startIndex 为 2。第一个项目的索引将从给定的 startIndex 开始。

示例

在下面的示例中,mylist 是传递给 enumerate 的列表。list() 函数用于显示 enumerate 输出。

mylist = ['A', 'B' ,'C', 'D']
e_list = enumerate(mylist,2)
print(list(e_list))

输出

[(2, 'A'), (3, 'B'), (4, 'C'), (5, 'D')]

遍历 enumerate 对象

该示例显示了带有和不带有 startIndex 的枚举对象的迭代。

  • 第一个 for 循环没有 startIndex,因此索引从 0 开始。
  • 第二个 for 循环的 startIndex 为 10,因此索引从 10 开始。

示例

mylist = ['A', 'B' ,'C', 'D']

for i in enumerate(mylist):
  print(i)
  print("\n")

print("Using startIndex as 10")    

for i in enumerate(mylist, 10):
  print(i)
  print("\n")

输出

(0, 'A')
(1, 'B')
(2, 'C')
(3, 'D')

Using startIndex as 10
(10, 'A')
(11, 'B')
(12, 'C')
(13, 'D')

枚举元组

在下面的示例中,您可以在 enumerate 中使用元组。您还可以使用 startIndex,并且每个项目的键将从给定的 startIndex 开始。

默认情况下,startIndex 为 0。因此,您看到项目 A 的键为 0,B 的键为 1,依此类推。

示例

my_tuple = ("A", "B", "C", "D", "E")
for i in enumerate(my_tuple):
  print(i)

输出

(0, 'A')
(1, 'B')
(2, 'C')
(3, 'D')
(4, 'E')

枚举字符串

在 Python 中,字符串是一个数组,因此您可以对其进行循环。如果您将字符串传递给 enumerate(),输出将显示字符串中每个字符的索引和值。

示例

my_str = "Guru99 "
for i in enumerate(my_str):
  print(i)

输出

(0, 'G')
(1, 'u')
(2, 'r')
(3, 'u')
(4, '9')
(5, '9')

枚举字典

在 Python 中,字典在花括号中列出,在这些花括号内声明了值。

每个元素都是一个键/值对,并用逗号分隔。您可以在 enumerate() 中使用字典并查看输出。

my_dict = {"a": "PHP", "b":"JAVA", "c":"PYTHON", "d":"NODEJS"}
for i in enumerate(my_dict):
  print(i)

输出

(0, 'a')
(1, 'b')
(2, 'c')
(3, 'd')

使用 Enumerate 的优点

以下是使用 Python enumerate 的优点/好处:

  • Enumerate 允许您循环列表、元组、字典、字符串,并提供值以及索引。
  • 要使用 for 循环获取索引值,您可以使用 list.index(n)。但是,list.index(n) 非常昂贵,因为它会遍历 for 循环两次。在这种情况 enumerate 非常有用,因为它一次性提供了索引和项目。

摘要

  • Enumerate() 函数是 Python 的一个内置函数。Enumerate() 函数为可迭代对象中的每个项目添加一个计数器,并返回一个 enumerate 对象。
  • 在 Python 的枚举中,您可以指定 startIndex,即您希望值开始的计数器。
  • Enumerate 可用于循环列表、元组、字典和字符串。
  • 当您在循环列表、元组、字典等时需要索引和值时,Enumerate 非常有用。
  • Enumerate 为列表中的每个项目提供一个自动计数器/索引。第一个索引值从 0 开始。您还可以通过使用 enumerate 中的可选参数 startIndex 来指定 startindex。
  • 如果您将字符串传递给 enumerate(),输出将显示字符串中每个字符的索引和值。