在Python中按索引查找列表元素2025年1月4日 | 阅读7分钟 下面的教程将指导您了解在 Python 编程语言中按列表中的索引查找列表数据元素的各种方法。问题将在探讨各种潜在解决方案之前得到彻底的解释。 按索引查找列表数据元素问题给定两个包含元素和索引的列表,编写一个 Python 程序来查找列表 2 中存在的索引处的列表 1 的项。 示例 1 输入 输出 [9, 15, 54, 98] 示例 2 输入 输出 ['Javatpoint', 'is', 'Wonderful'] 解决方案为了使用 Python 编程语言按索引查找列表元素,我们可以使用各种方法。其中一些方法列在下面
现在让我们逐一讨论这些方法及其实现来解决我们的问题。 方法 1:使用列表推导(朴素方法)使用列表推导是定位所需组件的第一种方法。我们遍历 'secondList',为每个 i 元素生成 firstList[i]。 示例 输出 [9, 15, 54, 98] 说明 此 Python 程序中的 findDataElements(firstList, secondList) 方法接受两个列表作为输入。它将返回 firstList(firstList)中索引在 secondList(secondList)中的成员,作为新列表。为此,该函数利用了列表推导。
方法 2:使用 map() 方法Python map() 是按索引查找数据元素的另一种选择。这里,firstList.__getitem__ 应用于 secondList,并为 secondList 中的每个元素 'i' 返回 firstList[i]。 示例 输出 [9, 15, 54, 98] 说明 此 Python 程序中的 findDataElements(firstList, secondList) 方法接受两个列表作为输入。它将返回 firstList(firstList)中索引在 secondList(secondList)中的成员,作为新列表。为此,该函数结合使用 __getitem__ 方法和 map 函数。
方法 3:使用 itemgetter() 方法示例 输出 [9, 15, 54, 98] 说明 此 Python 程序中的 findDataElements(firstList, secondList) 方法接受两个列表作为输入。它将返回 firstList(firstList)中索引在 secondList(secondList)中的成员,作为新列表。使用 secondList 中提供的索引,利用 operator 模块中的 itemgetter 函数可以有效地从 firstList 中检索组件。
方法 4:使用 NumPy示例 输出 [9, 15, 54, 98] 说明 此 Python 程序中的 findDataElements(firstList, secondList) 方法使用 NumPy 根据 secondList 中提供的索引从 firstList 中查找项。将 firstList 转换为 NumPy 数组后,它使用 secondList 进行数组索引来提取相关元素。最后,返回包含结果的列表。
方法 5:使用字典使用此方法,将创建一个将 secondList 索引映射到匹配的 firstList 条目的字典。之后,我们可以使用列表推导从字典中检索值。 首先,此代码中会创建一个名为 indexMap 的字典,该字典将 firstList 的索引映射到相关项。接下来,我们使用列表推导从 indexMap 中检索 secondList 中索引的值。最后,我们提供结果,即提取值的列表。 示例 输出 [9, 15, 54, 98] 说明 提供的函数 findDataElements(firstList, secondList) 的输入是两个列表,firstList 和 secondList。通过将 secondList 中的索引与 firstList 中的匹配条目链接起来,它会生成一个字典 indexMap。接下来,使用 secondList 中提供的索引,它使用列表推导从 firstList 中提取数据元素。最终,返回一个包含这些提取组件的列表。当使用列表 [9, 15, 21, 38, 54, 73, 98] 和 [0, 1, 4, 6] 调用 findDataElements(firstList, secondList) 时,它将返回 [9, 15, 54, 98],这些分别是 firstList 中索引 0、1、4 和 6 处的项。
方法 6:使用递归算法
示例 输出 [9, 15, 54, 98] 说明 findDataElements 方法使用 secondList 中提供的索引,迭代地从 firstList 中提取元素。它从一个名为 result 的空列表开始,并在每次递归调用时将 secondList 中相应元素提供的索引处的 firstList 中的元素附加到 result 中。一旦 secondList 中的所有索引都被处理完毕(递归结束),则返回 result 列表。当使用列表 [9, 15, 21, 38, 54, 73, 98] 和 [0, 1, 4, 6] 调用该函数时,将返回 firstList 中索引 0、1、4 和 6 处的项。
|
您是否曾因CodeChef恶毒的编译器而绝望地大喊,然后将额头砸在键盘上,喃喃地说:“EOF错误?”朋友,快过来加入俱乐部吧!但是,亲爱的读者,不要害怕!本文是您的EOF杀手锏和备忘单……
5 分钟阅读
? 在 Python 函数中设置默认参数值是一种便捷的方式,可以为参数分配一个默认值,当调用函数时没有为该参数提供任何参数时,将使用该默认值。此功能通过允许……来增强代码的灵活性和可读性。
阅读 17 分钟
简介 Python 的 pandas 库是一个强大的数据操作和分析工具,提供了 DataFrame 等数据结构,使处理结构化数据变得容易。数据分析中一个常见的任务是将字典转换为 DataFrame。在本文中,我们将探讨...
阅读 4 分钟
假设我们有一个字典。另外,我们还有两个词;让这些词是 A 和 B。在这个问题中,我们必须找到从 A 到 B 的最短链(如果存在),并返回这个最短链的长度。...
阅读9分钟
假设您是一位产品经理,希望将客户评价分为好评和差评两类。或者作为贷款经理,您希望识别哪些贷款申请人是安全的或危险的?您想预测哪些人会患糖尿病...
阅读 17 分钟
? 在接下来的教程中,我们将学习如何使用 Python Imaging Library (PIL) 从 URL 打开图像。但在开始之前,让我们简要了解一下 PIL 是什么。什么是 Python Imaging Library (PIL)? Python Imaging Library,简称 PIL,...
阅读 4 分钟
到目前为止,我们已经在 Python 中执行了各种列表操作。在本文中,我们将学习如何交换列表中的元素。但首先,让我们了解一下交换的含义?交换是一个过程,其中两个变量交换……
阅读 4 分钟
SSL(安全套接字层)是一种数字证书,用于验证网站身份并启用加密连接。它是一种安全协议,有助于在 Web 服务器和 Web 浏览器之间创建加密链接。公司和...
7 分钟阅读
? 简介 当您编写 Python 代码时,源代码存储在带有 .py 扩展名的文件中。但是,当您运行 Python 程序时,幕后会发生一些有趣的事情。Python 将您的源代码转换为一种称为字节码的格式,然后由...
阅读 3 分钟
? 虽然以 PDF(便携文档格式)传输文档很常见,但在某些情况下,您需要将 PDF 文件中的数据转换为 Excel 电子表格以进行进一步处理或分析。一种流行的方法是使用 tabula-py 包来提取表格...
阅读 4 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India