Convertir NumPy Array a List en Python

Manav Narula 10 octubre 2023
  1. Utilice el método tolist() para convertir un array numerosa en una lista
  2. Utilice el bucle for para convertir un array numerosa en una lista en Python
Convertir NumPy Array a List en Python

Las listas y los Arrays son dos de los objetos de colección más fundamentales y más utilizados en Python.

Ambos son mutables, se utilizan para almacenar una colección de elementos bajo un nombre común, y cada elemento tiene una posición específica que se puede utilizar para acceder a él.

Sin embargo, existen algunas diferencias notables. Las listas ya están incorporadas en Python, mientras que para los Arrays, necesitamos importar el módulo arrays o el módulo NumPy y debemos declarar los Arrays antes de usarlas. Los arrays también almacenan datos de manera más eficiente en la memoria y se utilizan mucho para operaciones matemáticas.

En este tutorial, convertiremos un array numpy en una lista.

Utilice el método tolist() para convertir un array numerosa en una lista

El método tolist() del array NumPy puede convertir un array numpy en una lista.

Por ejemplo,

import numpy as np

oned = np.array([[1, 2, 3]])
twod = np.array([[1, 2, 3], [4, 5, 6]])

print(oned.tolist())
print(twod.tolist())

Producción :

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

Tenga en cuenta que este método trata a toda el array como un elemento. Es por eso que cuando lo usamos con un array 2-D, devuelve una lista de listas.

Para evitar esto, podemos usar el método tolist() con el método flatten() o el método ravel(), que puede convertir un array N-D en un array 1-D lineal. Ambos métodos realizan la misma funcionalidad. La diferencia es que el método ravel() devuelve una vista de referencia del array y afecta el array original, mientras que el método flatten() funciona en una copia del array. Debido a esto, la función ravel() se considera más rápida y ocupa menos memoria.

El siguiente código muestra el uso de estas funciones.

import numpy as np

oned = np.array([1, 2, 3])
twod = np.array([[1, 2, 3], [4, 5, 6]])

print(oned.flatten().tolist())
print(twod.flatten().tolist())


print(oned.ravel().tolist())
print(twod.ravel().tolist())

Producción :

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

Utilice el bucle for para convertir un array numerosa en una lista en Python

Este es solo un método básico para alguien que es nuevo en la programación o quiere personalizar la lista final. Repetimos un array y agregamos cada elemento individualmente a una lista vacía. El siguiente código implementa esto.

import numpy as np

arr = np.array([1, 2, 3])
lst = []

for x in arr:
    lst.append(x)

print(lst)

Producción :

[1, 2, 3]
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artículo relacionado - Python Array