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模块的Concatenation()方法
方法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]]
结论
我们可以得出结论,在组合数组时,有几种有用的技术。但是,根据所需连接的类型,我们需要选择要应用的技术。这就是数组连接机制的工作原理。