# Combine Two Lists into 2D Array in Python (3 Examples)

Hi! This tutorial will show you how to merge 2 lists into a 2D array in the Python programming language.

Here is an overview:

Let’s get right into the Python code!

## Create Example Lists

We will create 2 example Python lists of integers that will be consolidated into a 2D array in this tutorial.

So, in your preferred Python IDE, run the lines of code below to create the example Python lists:

```list1 = [1, 2, 3]

print(list1)

# [1, 2, 3]

print(type(list1))

# <class 'list'>

list2 = [4, 5, 6]

print(list2)

# [4, 5, 6]

print(type(list2))

# <class 'list'>```

With the Python lists created, we will now examine two ways to join both lists together as a 2D array.

## Example 1: Merge 2 Lists into a 2D Array Using list() & zip() Functions

In this first example, we will use the built-in list() function and zip() function to join the two lists into a 2D array:

```array_2d = list(zip(list1, list2))

print(array_2d)

# [(1, 4), (2, 5), (3, 6)]

print(type(array_2d))

# <class 'list'>```

Here, the `zip()` function is used to pair corresponding elements from both lists.

The resulting pairs are then converted into a list using the `list()` function. Then, the contents of `array_2d` are printed to the console using the print() function.

Although the output is not exactly a 2D array, it is considered such by some sources.

## Example 2: Merge 2 Lists into a 2D Array Using List Comprehension

In this next example, we will use list comprehension to combine both lists into a 2D array:

```array_2d = [[list1[i], list2[i]] for i in range(len(list1))]

print(array_2d)

# [[1, 4], [2, 5], [3, 6]]

print(type(array_2d))

# <class 'list'>```

In the above example, we used list comprehension to iterate through the elements in each list, and stored those elements inside sublists.

This action, thus, returned a 2D array of 3 rows and 2 columns, i.e. a 3 x 2 array.

## Example 3: Merge 2 Lists into a 2D Array Using for Loop & zip() Function

In this last example, we will use a for loop and the built-in `zip()` function to consolidate both lists into a 2D array:

```array_2d = []

for i in zip(list1,list2):

array_2d.append(list(i))

print(array_2d)

# [[1, 4], [2, 5], [3, 6]]

print(type(array_2d))

# <class 'list'>```

The `zip()` function takes two or more iterables (e.g., lists, tuples, or strings) and aggregates them into a single iterable of tuples.

We then used the for loop to loop through the returned list of tuples, and parsed the loop variable to the `list()` function, which then returned a 2D array of 3 rows and 2 columns.

## Video, Further Resources & Summary

Do you need more explanations on how to merge 2 lists into a 2D array in Python? Then you should have a look at the following YouTube video of the Statistics Globe YouTube channel.

In the video, we explain in some more detail how to merge 2 lists into a 2D array in Python.

Furthermore, I encourage you to check out other interesting Python list tutorials on Statistics Globe, starting with these:

This post has shown, using three examples, how to merge 2 lists into a 2D array in Python. Your use case will determine which method to adopt.

This page was created in collaboration with Ifeanyi Idiaye. You might check out Ifeanyi’s personal author page to read more about his academic background and the other articles he has written for the Statistics Globe website.

Subscribe to the Statistics Globe Newsletter