How to convert a list to an array in Python

During programming, there will be instances when we will need to convert existing lists to arrays in order 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()

svg viewer

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. 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 in the case of np.asarray(), and true (by default) in the case of 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)
Copyright ©2024 Educative, Inc. All rights reserved