Convert list to array python

Educative Answers Team

During programming, there will be instances when you 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[]

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 ©2022 Educative, Inc. All rights reserved

A list in Python is a linear data structure that can hold heterogeneous elements they do not require to be declared and are flexible to shrink and grow. On the other hand, an array is a data structure which can hold homogeneous elements, arrays are implemented in Python using the NumPy library. Arrays require less memory than list.

The similarity between an array and a list is that the elements of both array and a list can be identified by its index value.
In Python lists can be converted to arrays by using two methods from the NumPy library: 
 

  • Using numpy.array[] 

Python3

import numpy

lst = [1, 7, 0, 6, 2, 5, 6]

arr = numpy.array[lst]

print ["List: ", lst]

print ["Array: ", arr]

Output: 

List:  [1, 7, 0, 6, 2, 5, 6]
Array:  [1 7 0 6 2 5 6]
  • Using numpy.asarray[] 

Python3

import numpy

lst = [1, 7, 0, 6, 2, 5, 6]

arr = numpy.asarray[lst]

print ["List:", lst]

print ["Array: ", arr]

Output: 

List:  [1, 7, 0, 6, 2, 5, 6]
Array:  [1 7 0 6 2 5 6]

The vital difference between the above two methods is that numpy.array[] will make a duplicate of the original object and numpy.asarray[] would mirror the changes in the original object. i.e :

When a copy of the array is made by using numpy.asarray[], the changes made in one array would be reflected in the other array also but doesn’t show the changes in the list by which if the array is made. However, this doesn’t happen with numpy.array[].

Python3

import numpy

lst = [1, 7, 0, 6, 2, 5, 6]

arr = numpy.asarray[lst]

print ["List:", lst]

print ["arr: ", arr]

arr1 = numpy.asarray[arr]

print["arr1: " , arr1]

arr1[3] = 23

print["lst: " , lst]

print["arr: " , arr]

print["arr1: " , arr1]

Output :

List: [1, 7, 0, 6, 2, 5, 6]
arr:  [1 7 0 6 2 5 6]
arr1:  [1 7 0 6 2 5 6]
lst:  [1, 7, 0, 6, 2, 5, 6]
arr:  [ 1  7  0 23  2  5  6]
arr1:  [ 1  7  0 23  2  5  6]

In “arr” and “arr1” the change is visible at index 3 but not in 1st.


Can you convert a list to an array?

By using the toArray[] method, we can easily convert a list into an array. The toArray[] method returns an array having all the elements in the list. The returned array contains elements in the same sequence as the list.

Why do we convert list to array in Python?

List, can be heterogeneous, can have data of multiple data types and it is sometimes undesirable. There a need to convert this to data structure which restricts the type of data. The Python language comes with array data structure which can be used for this purpose.

Can you convert between Python lists and arrays?

The similarity between an array and a list is that the elements of both array and a list can be identified by its index value. In Python lists can be converted to arrays by using two methods from the NumPy library: Using numpy. array[]

How we convert the list into the NumPy array?

To convert a Python list to a NumPy array, use either of the following two methods:.
The np. array[] function that takes an iterable and returns a NumPy array creating a new data structure in memory..
The np. asarray[] function that takes an iterable as argument and converts it to the array. The difference to np..

Chủ Đề