Home  >  Article  >  Backend Development  >  How to Convert NumPy Arrays to Python Lists?

How to Convert NumPy Arrays to Python Lists?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-31 05:47:30479browse

How to Convert NumPy Arrays to Python Lists?

Converting NumPy Arrays to Python Lists

NumPy arrays provide efficient numerical operations and data handling. However, there may be scenarios where it's necessary to convert them into Python lists for further processing or compatibility with other tools. This article explores the most common method for achieving this conversion.

Using the tolist() Method

The tolist() method is an effective way to convert a NumPy array into a Python list. It iterates through the elements of the array and assigns them to a new list with the same dimensions. For example:

<code class="python">import numpy as np

array = np.array([[1,2,3],[4,5,6]])
list_from_array = array.tolist()</code>

The resulting list_from_array will be:

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

Preserving Data Types

It's important to note that tolist() converts the array elements to the nearest compatible Python type. This means that NumPy data types, such as np.int32 or np.float32, will be converted to regular Python integers or floats. If it's necessary to preserve the NumPy data types, consider using the list() method instead. This will produce a list of NumPy scalars:

<code class="python">list_of_scalars = list(array)</code>

In this case, list_of_scalars will be:

[np.int32(1), np.int32(2), np.int32(3), np.int32(4), np.int32(5), np.int32(6)]

By using the tolist() or list() methods appropriately, you can easily convert NumPy arrays into Python lists while maintaining the desired data types and dimensions.

The above is the detailed content of How to Convert NumPy Arrays to Python Lists?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn