Python 程序在指定索引处插入元素


数组是一种数据结构,用于存储同类数据元素的集合。数组中的每个元素都由一个索引值标识。

Python 中的数组

Python 本身没有用于表示数组的数据结构。但是,我们可以使用列表数据结构作为数组的替代方案。这里我们将使用列表作为数组 -

[10, 4, 11, 76, 99]

Python 还提供了一些更合适的模块,这些模块是 NumPy 和 array 模块。

NumPy 模块定义的 NumPy 数组为 -

array([1, 2, 3, 4])

Python 中的索引从 0 开始,因此上述数组元素使用其各自的索引值(如 0、1、2,直到 n-1)来访问。

在下面的文章中,我们将看到使用 Python 编程在指定索引处将元素插入数组的多种方法。

输入输出场景

假设我们有一个包含 6 个整数值的数组 A。插入元素后,结果数组将在指定的索引位置插入元素。

Input array: [9, 3, 6, 2, 7, 1] Output array: [9, 3, 6, 2, 10, 7, 1]

元素 10 在索引位置 4 处插入,插入值后元素数量增加到 7。让我们看看另一个数组。

Input arrays: [‘a’, ‘b’, ‘c’] Output array: [‘k’, ‘a’, ‘b’, ‘c’]

这里元素“k”在第一个索引处插入。

Learn Python in-depth with real-world projects through our Python certification course. Enroll and become a certified expert to boost your career.

使用 list.insert() 方法

为了在指定索引处将元素插入数组,我们可以在 Python 中使用 insert() 方法。insert() 是列表数据结构的内置方法,用于在给定索引处插入元素。以下是此函数的语法 -

list.insert(index, element)

index 参数指定插入元素的位置,第二个参数是给定的元素。list.insert() 方法不返回任何内容,它更新原始列表。

示例

在此示例中,我们将使用 list.insert() 方法。

Open Compiler
l = [9, 3, 6, 2, 7, 1] # print initial array print("Original array: ", l) specified_index = 4 element = 10 # insert element l.insert(specified_index, element) print("Array after inserting the element: ", l)

输出

Original array:  [9, 3, 6, 2, 7, 1]
Array after inserting the element:  [9, 3, 6, 2, 10, 7, 1]

原始数组 l 在给定位置 4 处更新了新元素 10。

使用 for 循环

不使用任何方法/函数,我们可以使用 for 循环将值插入数组。

示例

这里我们将使用 Python for 循环在特定位置插入值。

Open Compiler
l = [3, 6, 2, 8, 4] # print initial array print("Original array: ", l) specified_index = 1 element = 0 for i in range(len(l)): if i == specified_index: l[i] = element print("Array after inserting the element: ", l)

输出

Original array:  [3, 6, 2, 8, 4]
Array after inserting the element:  [3, 0, 2, 8, 4]

这里我们使用数组索引值迭代 for 循环,并将索引与指定索引进行比较,然后在索引与指定索引匹配的位置插入元素。

使用 numpy.insert() 方法

numpy.insert() 方法用于在给定索引处插入值。它返回带有插入值的输入数组的副本。以下是语法 -

numpy.insert(arr, obj, values, axis=None)

参数

  • arr - 输入 NumPy 数组。

  • obj - 它定义了插入元素的索引。

  • values - 要插入输入数组的元素。

  • axis - 要插入值的轴。默认为 None。

示例

在此示例中,我们将使用 numpy.insert() 方法。

Open Compiler
import numpy as np arr = np.array([0, 6, 2, 7, 9, 1, 4]) # print initial array print("Original array: ", arr) specified_index = 5 element = 10 # insert element result = np.insert(arr, specified_index, element) print("Array after inserting the element: ", result)

输出

Original array:  [0 6 2 7 9 1 4]
Array after inserting the element:  [ 0  6  2  7  9 10  1  4]

使用 numpy.insert() 函数在位置 5 处成功插入了元素 10。

更新于: 2023年5月29日

3K+ 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告