Python程式:連線兩個陣列


什麼是陣列連線?

將陣列組合成單個數組或將數組合併成單個數組的過程稱為陣列連線。可以使用多種技術透過多種方式完成此操作。讓我們討論所有有助於在Python中連線陣列的技術。

輸入輸出場景

考慮三個陣列來執行連線。

arr1 = [“ Hello ”, “ World ”, “ My ”, “ Name ”, “ is ”, “ Python ”]
arr2 = [“ Hello ”, “ World ”, “ My ”, “ Name ”, “ is ”, “ C ”]
arr3 = [“ Hello ”, “ World ”, “ My ”, “ Name ”, “ is ”, “ Java ”]

現在,水平順序的連線陣列為

  • [" Hello ", " World ", " My ", " Name ", " is ", " Python ", " Hello ", " World ", " My ", " Name ", " is ", " C ", " Hello ", " World ", " My ", " Name ", " is ", " Java "]。

  • 水平連線將所有陣列元素合併在一起,沒有分隔符,水平排列。

  • 垂直順序為[ [“ Hello ”, “ World ”, “ My ”, “ Name ”, “ is ”, “ Python ”], [“ Hello ”, “ World ”, “ My ”, “ Name ”, “ is ”, “ C ”], [“ Hello ”, “ World ”, “ My ”, “ Name ”, “ is ”, “ Java ”]]。

  • 垂直連線根據陣列中元素所在的位置合併元素,並且此型別的連線中清楚地標明瞭陣列的分隔。

陣列連線

存在各種陣列連線方法,每種方法都可以產生垂直或水平連線的陣列或矩陣。讓我們一一探索這些技術。

使用Numpy模組的concatenate()方法

concatenate()方法是Numpy模組的內建方法之一。它用於連線給定的陣列。除非匯入了numpy模組並在numpy模組下建立了一個物件,否則無法直接訪問此方法。

預設情況下,使用此方法連線陣列的結果是水平連線陣列。

語法

以下是使用“concatenate()”方法的語法。

concatenated_array = n.concatenate([narr1, narr2, narr3, narr4,. . . . narrN])

假設要連線陣列arr1、arr2、arr3、arr4、……、arrN。為了執行該操作,必須將它們轉換為numpy陣列,分別命名為narr1、narr2、narr3、……、narrN。

示例

在下面的示例中,我們將使用numpy模組的concatenate()方法來組合或連線多個數組。

import numpy as n 
arr1 = [1, 2, 3, 4]
arr2 = [5, 6, 7, 8]
arr3 = [9, 10, 11, 12]

narr1 = n.array(arr1)
narr2 = n.array(arr2)
narr3 = n.array(arr3)

concatenated_array = n.concatenate([narr1, narr2, narr3])

print(concatenated_array)

輸出

上述程式的輸出如下:

[ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12]

使用+運算子

“+”運算子可用於組合和合並陣列,非常輕鬆地實現連線。讓我們看一下使用“+”運算子的語法和示例程式。

語法

以下是使用“+”運算子的語法:

concatenated_array = arr1 + arr2 + arr3 + arr4 + . . . . arrN

這裡,考慮使用+運算子連線陣列arr1、arr2、arr3、arr4、……、arrN。

示例

在下面的示例中,我們將使用“+”運算子來組合或連線多個數組。

arr1 = [1, 2, 3, 4]
arr2 = [5, 6, 7, 8]
arr3 = [9, 10, 11, 12]

concatenated_array = arr1 + arr2 + arr3
print(concatenated_array)

輸出

上述程式的輸出如下:

[ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12]

在Python中使用Numpy模組的vstack()方法

Numpy模組中用於執行連線的內建方法是vstack()。此方法用於連線陣列。使用此方法後,程式的結果將生成一個垂直連線的陣列,這是之前討論的任何其他技術都無法實現的。除非匯入了numpy模組並在numpy模組下建立了一個物件,否則無法直接訪問此方法。

語法

以下是使用“concatenate()”方法的語法:

concatenated_array = n.vstack((narr1, narr2, narr3, narr4,. . . . ., narrN))

陣列narr1、narr2、narr3、……、narrN是要連線的numpy陣列。

示例

在下面的示例中,我們將使用vstack()方法來組合或連線多個數組。

import numpy as n 
arr1 = [1, 2, 3, 4]
arr2 = [5, 6, 7, 8]
arr3 = [9, 10, 11, 12]

narr1 = n.array(arr1)
narr2 = n.array(arr2)
narr3 = n.array(arr3)

concatenated_array = n.vstack((narr1, narr2, narr3))
print(concatenated_array)

輸出

上述程式的輸出如下:

[[ 1  2  3  4]
 [ 5  6  7  8]
 [ 9 10 11 12]]

結論

我們可以得出結論,有幾種技術可以幫助連線陣列。但是,根據我們需要的連線型別,我們需要選擇必須應用的技術。這就是陣列連線機制的工作方式。

更新於:2023年5月5日

11K+ 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告