如何在 Python 中查找列表中元素的索引?


在 Python 中,索引指的是元素在一个有序列表中的位置。起始元素的索引为0,最后一个元素的索引为n-1,其中 n 是列表的长度。

在本教程中,我们将学习如何在 Python 中查找列表中元素的索引。有多种方法可以检索元素的索引。

使用 index() 方法

在 Python 中,可以向列表的index()方法传递三个参数:

  • 元素 - 需要查找的元素。
  • 起始位置 (可选) - 从此索引开始搜索。
  • 结束位置 (可选) - 在此索引之前搜索元素。

示例

此方法允许用户在边界(起始位置和结束位置)内搜索列表中的元素。在本例中,我们查看了两种情况:

情况 1 - 使用起始参数从索引 0 开始搜索元素。

情况 2 - 获取指定边界之外的元素索引,这将导致错误。

Open Compiler
lst=['tutorials','point','easy','learning','simply'] index1 = lst.index('easy',0) print(index1) index2=lst.index('simply',1,3) print(index2)

输出

执行上述程序后,将获得以下输出。

2
Traceback (most recent call last):
  File "main.py", line 4, in <module>
    index2=lst.index('simply',1,3)
ValueError: 'simply' is not in list

使用列表推导式和 enumerate() 函数

Python 中的列表推导式是一种从旧列表创建新列表的方法。使用列表推导式,您可以获取字符串“Program”每个实例的所有索引。

示例

Python 中的 enumerate() 函数允许你保留满足给定条件的项目索引。对于作为参数传递给函数的列表 (animal_names) 中的每个项目,它首先提供一个对 (index, item)。列表项目本身称为 item,而 index 指的是列表项目的索引号。

然后,它执行计数器的功能,选择并移动满足您设置的条件的项目的索引。计数器从 0 开始计数,并且每次满足您设置的条件时都会递增。

Open Compiler
animal_names= ["Elephant","Lion","Zebra","Lion","Tiger","Cheetah"] indices = [index for (index, item) in enumerate(animal_names) if item == "Lion"] print('The indices of the given item Lion is:,',indices)

输出

使用列表推导式,如下所示输出中,将形成一个包含文本“Lion”所有索引的新列表:

The indices of the given item Lion is:, [1, 3]

使用 for 循环

在这个示例代码中,我们使用简单的 ‘for’ 循环迭代整个列表 count 并通过计数每次迭代来查找所需元素 (key)。如果列表中找不到该元素,则以下代码将打印该元素未找到。

Open Compiler
lst=['tutorials','point','easy','learning','simply'] key= 'easy' count=0 for i in lst: if(key==i): count=count+1 print(count+1) break else: count=count+1 if (count==len(lst)): print('Element not found')

输出

执行上述程序后,将获得以下输出。

4

更新于:2022年11月8日

468 次浏览

启动您的 职业生涯

完成课程获得认证

开始学习
广告