首頁 >後端開發 >Python教學 >Python程式將多個元素插入陣列中的指定索引位置

Python程式將多個元素插入陣列中的指定索引位置

PHPz
PHPz轉載
2023-09-03 22:13:06863瀏覽

Python程式將多個元素插入陣列中的指定索引位置

陣列是以有組織的方式儲存的同類資料元素的集合。數組中的每個資料元素都由索引值來標識。

Python 中的陣列

Python 沒有原生的陣列資料結構。因此,我們可以使用列表資料結構來取代數組。

[10, 4, 11, 76, 99]

同時我們可以使用Python Numpy模組來處理陣列。

由numpy模組定義的陣列是−

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

Python 中的索引從 0 開始,因此可以使用各自的索引值來存取上述陣列元素,如 0、1、2、直到 n-1。

在下面的文章中,我們將看到在指定索引處插入多個元素的不同方法。

輸入輸出場景

假設我們有一個包含 4 個整數值的陣列 A。結果陣列將在指定索引位置插入多個元素。

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

將元素 6、2、10 插入到索引位置 2 處,元素數增加到 7。

Input arrays:
[2 4 6 8 1 3 9]
Output array:
[1 1 1 2 4  6 8 1 3 9]

在第0個索引位置插入了元素1 1 1。

使用清單切片

要在指定索引處插入多個元素,我們可以使用清單切片。

範例

在這個範例中,我們將使用清單切片。

l = [2, 3, 1, 4, 7, 5]
# print initial array
print("Original array:", l)

specified_index = 1
multiple_elements = 10, 11, 12

#  insert element
l[specified_index:specified_index] =  multiple_elements

print("Array after inserting multiple elements:", l)

輸出

Original array: [2, 3, 1, 4, 7, 5]
Array after inserting multiple elements: [2, 10, 11, 12, 3, 1, 4, 7, 5]

使用清單串聯

使用清單切片和清單拼接,我們將建立一個函數,在指定位置插入多個元素。 Python清單沒有任何方法可以在指定位置插入多個元素。

範例

在這裡,我們將定義一個函數,用於在給定的索引處插入多個元素。

def insert_elements(array, index, elements):
    return array[:index] + elements + array[index:]

l = [1, 2, 3, 4, 5, 6]
# print initial array
print("Original array: ", l)

specified_index = 2
multiple_elements = list(range(1, 4))

# insert element
result = insert_elements(l, specified_index, multiple_elements)

print("Array after inserting multiple elements: ", result)

輸出

Original array: [1, 2, 3, 4, 5, 6]
Array after inserting multiple elements: [1, 2, 1, 2, 3, 3, 4, 5, 6]

insert_elements函數在第2個索引位置插入了從1到4的元素。

使用 numpy.insert() 方法

在這個範例中,我們將使用numpy.insert()方法在給定的索引處插入多個值。以下是語法 -

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

此方法傳回一個插入了值的輸入陣列的副本。但它不會更新原始數組。

範例

在此範例中,我們將使用 numpy.insert() 方法在第二個索引位置插入 3 個元素。

import numpy as np

arr = np.array([2, 4, 6, 8, 1, 3, 9])
# print initial array
print("Original array: ", arr)

specified_index = 2
multiple_elements = 1, 1, 1

#  insert element
result = np.insert(arr, specified_index, multiple_elements)

print("Array {} after inserting multiple elements at the index {} ".format(result,specified_index))

輸出

Original array:  [2 4 6 8 1 3 9]
Array [2 4 1 1 1 6 8 1 3 9] after inserting multiple elements at the index 2

3個元素1,1,1成功插入到陣列arr位置2處。

範例

在此範例中,我們將使用包含所有字串元素的 numpy 陣列。

import numpy as np
arr = np.array(['a','b', 'c', 'd'])
# print initial array
print("Original array: ", arr)
specified_index = 0
multiple_elements = list('ijk')
#  insert element
result = np.insert(arr, specified_index, multiple_elements)

print("Array {} after inserting multiple elements at the index {} ".format(result,specified_index))

輸出

Original array:  ['a' 'b' 'c' 'd']
Array ['i' 'j' 'k' 'a' 'b' 'c' 'd'] after inserting multiple elements at the index 0

元素 'i' 'j' 'k' 插入到第 0 個索引位置。

以上是Python程式將多個元素插入陣列中的指定索引位置的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除