Python - Join Arrays



In Python, array is a homogenous collection of Python's built in data types such as strings, integer or float objects. However, array itself is not a built-in type, instead we need to use the array class in Python's built-in array module.

Join Arrays by Appending Elements

To join two arrays, we can do it by appending each item from one array to other.

Here are two Python arrays −

a = arr.array('i', [10,5,15,4,6,20,9])
b = arr.array('i', [2,7,8,11,3,10])

Run a for loop on the array "b". Fetch each number from "b" and append it to array "a" with the following loop statement −

for i in range(len(b)):
   a.append(b[i])

The array "a" now contains elements from "a" as well as "b".

Example: Join Two Arrays by Appending Elements

Here is the complete code

import array as arr
a = arr.array('i', [10,5,15,4,6,20,9])
b = arr.array('i', [2,7,8,11,3,10])
for i in range(len(b)):
   a.append(b[i])
print (a, b)

It will produce the following output

array('i', [10, 5, 15, 4, 6, 20, 9, 2, 7, 8, 11, 3, 10])

Join Arrays by Converting to List Objects

Using another method to join two arrays, first convert arrays to list objects −

a = arr.array('i', [10,5,15,4,6,20,9])
b = arr.array('i', [2,7,8,11,3,10])
x=a.tolist()
y=b.tolist()

The list objects can be concatenated with the '+' operator.

z=x+y

If "z" list is converted back to array, you get an array that represents the joined arrays −

a.fromlist(z)

Example: Join Two Arrays by Converting to List Objects

Here is the complete code

from array import array as arr
a = arr.array('i', [10,5,15,4,6,20,9])
b = arr.array('i', [2,7,8,11,3,10])
x=a.tolist()
y=b.tolist()
z=x+y
a=arr.array('i')
a.fromlist(z)
print (a)

Join Arrays Using extend() Method

We can also use the extend() method from the List class to append elements from one list to another.

First, convert the array to a list and then call the extend() method to merge the two lists −

Example: Join Two Arrays using extend() Method

from array import array as arr
a = arr.array('i', [10,5,15,4,6,20,9])
b = arr.array('i', [2,7,8,11,3,10])
a.extend(b)
print (a)

It will produce the following output

array('i', [10, 5, 15, 4, 6, 20, 9, 2, 7, 8, 11, 3, 10])
Advertisements