PHP前端开发

Python程序用于在数组中查找指定项的第一次出现的索引

百变鹏仔 17小时前 #Python
文章标签 组中

数组是一种数据结构,用于按顺序存储相同数据类型的元素。并且存储的元素由索引值来标识。 Python 没有特定的数据结构来表示数组。但是,我们可以使用 List 数据结构或 Numpy 模块来处理数组。

在本文中,我们看到了多种获取指定项在数组中第一次出现的索引的方法。

输入输出场景

现在让我们看看一些输入输出场景。

假设我们有一个包含很少元素的输入数组。在输出中,我们将获取第一次出现的指定值的索引。

立即学习“Python免费学习笔记(深入)”;

Input array:[1, 3, 9, 4, 1, 7]specified value = 9Output:2

指定的元素 9 仅在数组中出现一次,该值的结果索引为 2。

Input array:[1, 3, 6, 2, 4, 6]specified value = 6Output:2

给定元素 6 在数组中出现了两次,第一次出现的索引值为 2。

使用list.index()方法

list.index() 方法可帮助您查找数组中给定元素第一次出现的索引。如果列表中存在重复元素,则返回该元素的第一个索引。以下是语法 -

list.index(element, start, end)

第一个参数是我们想要获取索引的元素,第二个和第三个参数是可选参数,从哪里开始和结束对给定元素的搜索。

list.index() 方法返回一个整数值,它是我们传递给该方法的给定元素的索引。

示例

在上面的示例中,我们将使用index()方法。

# creating arrayarr = [1, 3, 6, 2, 4, 6]print ("The original array is: ", arr) print() specified_item = 6# Get index of the first occurrence of the specified itemitem_index = arr.index(specified_item)print('The index of the first occurrence of the specified item is:',item_index)

输出

The original array is:  [1, 3, 6, 2, 4, 6]The index of the first occurrence of the specified item is: 2

给定值 6 在数组中出现两次,但 index() 方法仅返回第一次出现值的索引。

使用for循环

类似地,我们可以使用 for 循环和 if 条件获取出现在数组第一个位置的指定项的索引。

示例

在这里,我们将使用 for 循环迭代数组元素。

# creating arrayarr = [7, 3, 1, 2, 4, 3, 8, 5, 4]print ("The original array is: ", arr) print() specified_item = 4# Get the index of the first occurrence of the specified itemfor index in range(len(arr)):   if arr[index] == specified_item:      print('The index of the first occurrence of the specified item is:',index)      break

输出

The original array is:  [7, 3, 1, 2, 4, 3, 8, 5, 4]The index of the first occurrence of the specified item is: 4

给定值 4 在数组中重复出现,但上面的示例仅返回第一个出现的值的索引。

使用 numpy.where()

numpy.where() 方法用于根据给定条件过滤数组元素。通过使用这个方法,我们可以获得给定元素的索引。以下是语法 -

numpy.where(condition, [x, y, ]/)

示例

在此示例中,我们将使用带条件的 numpy.where() 方法。

import numpy as np# creating arrayarr = np.array([2, 4, 6, 8, 1, 3, 9, 6])print("Original array: ", arr)specified_index = 6index = np.where(arr == specified_index)# Get index of the first occurrence of the specified itemprint('The index of the first occurrence of the specified item is:',index[0][0])

输出

Original array:  [2 4 6 8 1 3 9 6]The index of the first occurrence of the specified item is: 2

条件arr ==指定索引检查numpy数组中的给定元素,并返回一个包含满足给定条件或True的元素的数组。从结果数组中,我们可以使用索引[0][0]获取第一次出现的索引。