What is the difference between an array and a list in Python?

What is the difference between an array and a list in Python?

In Python, both lists and arrays are used for storing data as a data structure. It can be used for both indexing and iteration. This article focuses on providing the reader with a brief overview of lists and arrays, then outlining the differences between difference between an array and a list. Also, there are implementations of how arrays and lists can be used.


Lists and arrays store a collection of items. They have multiple use cases and could easily work with other modules and libraries for better outcomes. They both belong to the sequence data types in Python. Easiest to initialize compared to all other programming languages. They both use indexes starting from zero to access elements. Lists can be accessed without any external dependencies whereas arrays require external dependencies.


Lists are used to store multiple items in a single variable. They can store items belonging to primary data types besides list, tuple, set, and dictionary. All items inside a list are enclosed in a square bracket or use the keyword list. Below is an example of a list using both types of initialization:

list_1 = [1, 'two', (3, ), {4 : "four"}] list_1 = list("Hello World")
Code language: Python (python)

The first element of a list has an index of 0. Elements of a list are ordered and will not change except for explicit changes. The addition of new elements in a list will happen at the end(rear).

We can use the type() function to check the type of the variable. Example:

Code language: Python (python)

We will get the output <class 'list'>, which defines that it belongs to the list data type.

Also, there is another function named len() that gives the number of elements in the list currently. Example:

Code language: Python (python)

This just returns an integer that equals the number of elements present. In our case its 4.


To use arrays in python we need to import another library named numpy which has a function named array(). Though there are many alternate libraries like:

But numpy being a standard library, open source, continuous improvement, and large developers using it we limit this blog to covering NumPy arrays. For this, we first need to install the NumPy library using pip:

pip install numpy
Code language: Bash (bash)

This installs the NumPy package locally that we could use. You can go through the documentation for a better understanding of NumPy.

Here is the implementation of the same:

import numpy as np arr_1 = np.array([1, 2, 3, 4, 5]) print(arr_1) print(type(arr_1))
Code language: Python (python)

The output we get is [1, 2, 3, 4, 5] and <class 'numpy.ndarray'> in individual lines.

Difference between Arrays and Lists

With a basic understanding of lists and arrays let’s jot down the differences to differentiate their working and use cases.

Consists of elements belonging to the same data typeConsists of elements belonging to different data types
Can handle arithmetic operationsCannot handle arithmetic operations
Needs external modules for declarationDoesn’t require external modules
Nesting must-have elements of the same sizeNesting without restrictions is possible
Consumes shorter memory and easier to accessLarger memory for easy addition and relatively slower
Creation, updating, and deletion must be done element-wiseCreation, updating, and deletion with ease
The size of the array is fixedThe size of the lists is variable
Lists VS Arrays


Lists and arrays have their pros and cons but mostly lists are used. In Machine Learning based applications especially in deep learning where we need extremely large computations and faster results, arrays are used. In such a way, both arrays and lists outperform each other in one situation over another. So the decision has to be taken between more accessibility or compromised with faster computation.

Sharing is caring

Did you like what Sriniketh J wrote? Thank them for their work by sharing it on social media.