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”在第一個索引處插入。

使用 list.insert() 方法

為了在指定索引處將元素插入陣列,我們可以在 Python 中使用 insert() 方法。insert() 是列表資料結構的內建方法,用於在給定索引處插入元素。以下是此函式的語法 -

list.insert(index, element)

index 引數指定插入元素的位置,第二個引數是給定的元素。list.insert() 方法不返回任何內容,它更新原始列表。

示例

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

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 迴圈在特定位置插入值。

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() 方法。

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+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告