当前位置: 首页 > 编程笔记 >

Python从列表中查找子列表元素的索引

郎刚捷
2023-03-14
本文向大家介绍Python从列表中查找子列表元素的索引,包括了Python从列表中查找子列表元素的索引的使用技巧和注意事项,需要的朋友参考一下

在本教程中,我们将编写一个程序,该程序从列表中查找子列表元素的索引。让我们看一个例子来清楚地理解它。

输入列表

nested_list = [[1, 2, 3], [4, 5], [6, 7, 8, 9]]

输出结果

Index of 7:- 2
Index of 5:- 1
Index of 3:- 0

让我们看看解决给定问题的最简单,最常见的方法。按照给定的步骤解决它。

  • 初始化列表。

  • 使用索引遍历列表。

  • 遍历子列表并检查要查找索引的元素。

  • 如果找到了元素,则打印并中断循环

示例

#初始化列表
nested_list = [[1, 2, 3], [4, 5], [6, 7, 8, 9]]
#函数查找索引
def index(element):
#初始化跟踪元素的标志
is_found = False
#遍历列表
for i in range(len(nested_list)):
   #遍历子列表
   for j in range(len(nested_list[i])):
      #查找元素
      if nested_list[i][j] == element:
         #打印包含该元素的子列表索引
         print(f'Index of {element}: {i}')
         #将标志更改为True
         is_found = True
      #打破内循环
      break
   #打破外部循环
   if is_found:
      break
   #检查是否找到该元素
   if not is_found:
      #打印“元素未找到”消息
      print("元素不在列表中")
index(7)
index(5)
index(3)

输出结果

如果运行上面的代码,则将得到以下结果。

Index of 7: 2
Index of 5: 1
Index of 3: 0
 类似资料:
  • 主要内容:index() 方法,count()方法Python 列表(list)提供了 index() 和 count() 方法,它们都可以用来查找元素。 index() 方法 index() 方法用来查找某个元素在列表中出现的位置(也就是索引),如果该元素不存在,则会导致 ValueError 错误,所以在查找之前最好使用 count() 方法判断一下。 index() 的语法格式为: listname.index(obj, start, en

  • 问题内容: 我有一个很长的浮点数列表,范围从1到5,称为“平均值”,我想返回小于a或大于b的元素的索引列表 但是令人惊讶的是,“ matches”的输出中有很多重复,例如。 为什么会这样呢? 问题答案: 您正在使用它将仅在列表中找到您的值的 第一个 匹配项。因此,如果在索引2和索引9处的值为1.0,则无论列表中发生了多少次,都将 始终 返回。 使用到索引添加到您的循环,而不是: 您可以将其折叠为列

  • 问题内容: 我想从列表中筛选元素,并使用lambda遍历每个元素的元素。例如,给定列表: 假设我只想保留列表总和大于N的元素。我尝试编写: 但我得到了错误: 在将每个元素的值分配给x,y和z时如何进行迭代?像zip之类的东西,但列表很长。 谢谢, ps我知道我可以这样写:filter(lambda x:sum(x)…,a)但这不是重点,想象一下这些不是数字而是任意元素,我想将它们的值分配给变量名。

  • 问题内容: 我必须搜索一个列表,然后用一个元素替换所有出现的元素。到目前为止,我在代码方面的尝试使我无处可寻,做到这一点的最佳方法是什么? 例如,假设我的列表具有以下整数 我需要将所有出现的数字1替换为值10,所以我需要的输出是 因此,我的目标是将数字1的所有实例替换为数字10。 问题答案:

  • 问题内容: 我有一个清单“ a” 我需要找到一个特定数字的所有元组。说1 我怎么做? 问题答案: 如果只希望第一个数字匹配,则可以这样操作: 如果您仅搜索其中包含1的元组:

  • 问题内容: 所以这是我的代码: 包含一个整数列表。我想比较于并打印出不在的数字相比时。 当不能比较时,我可以打印其中的元素,但是当我尝试使用上面的代码进行相反操作时,则什么也不会打印。 有什么帮助吗? 问题答案: 您的代码没有按照我认为的方式执行。该行将遍历,每次等于的一个元素。因此,在执行任何操作之前,原始列表将被覆盖。 我想你想要这样的东西: 但是您可以轻松地执行以下操作: 或(如果您不介意丢