How to convert a list to an array in Python

Key takeaways:

  • Use numpy.array() or numpy.asarray() to convert lists to arrays in Python.

  • numpy.array() creates a copy of the list by default, while numpy.asarray() does not.

  • numpy.asarray() is more memory-efficient as it avoids unnecessary copying.

During programming, there will be instances when we will need to convert existing lists to arrays to perform certain operations on them (arrays enable mathematical operations to be performed on them in ways that lists do not).

Lists can be converted to arrays using the built-in functions in the Python numpy library.

numpy provides us with two functions to use when converting a list into an array:

  • numpy.array()

  • numpy.asarray()

High-level diagram to understand np.array()/np.asarray()
High-level diagram to understand np.array()/np.asarray()

1. Using numpy.array()

This function of the numpy library takes a list as an argument and returns an array that contains all the elements of the list. Let’s see the example below:

import numpy as np
my_list = [2,4,6,8,10]
my_array = np.array(my_list)
# printing my_array
print my_array
# printing the type of my_array
print type(my_array)

2. Using numpy.asarray()

This function calls the numpy.array() function inside itself. See the definition below:

def asarray(a, dtype=None, order=None):
    return array(a, dtype, copy=False, order=order)

The main difference between np.array() and np.asarray() is that the copy flag is False for np.asarray(), whereas it is True by default for np.array().

This means that np.array() will make a copy of the object (by default) and convert that to an array, while np.asarray() will not.

The code below ​illustrates the usage of np.asarray():

import numpy as np
my_list = [2,4,6,8,10]
my_array = np.asarray(my_list)
# Printing my_array
print my_array
# Printing the type of my_array
print type(my_array)

Start coding with confidence! “Learn Python 3 from Scratch” takes you through Python fundamentals and program structures, culminating in a practical project to solidify your skills.

Conclusion

Converting lists to arrays is essential for numerical operations, and Python’s numpy library offers two methods: numpy.array() and numpy.asarray(). The key difference is that numpy.array() creates a copy by default, while numpy.asarray() avoids copying for better performance, making choosing the right function for your needs is important.

Frequently asked questions

Haven’t found what you were looking for? Contact Us


What does tolist() do in Python?

The tolist() converts a NumPy array or similar data structure into a Python list.


Does Python have an ArrayList?

No, Python doesn’t have an ArrayList like Java, but Python’s list serves a similar purpose with dynamic resizing.


Is a Python list just an array?

No, Python’s list is more versatile, supporting heterogeneous data, while arrays (e.g., from NumPy) are optimized for numerical computations and support only elements of the same data type.


Free Resources

Copyright ©2025 Educative, Inc. All rights reserved