logo

numpy.ndarray.tolist() a Python

El mòdul numpy proporciona una funció numpy.ndarray.tolist() , utilitzat per convertir els elements de dades d'una matriu en una llista. Aquesta funció retorna la matriu com a a.my- llista de nivells niificats profunds d'escalars de Python.

En paraules senzilles, aquesta funció retorna una còpia dels elements de la matriu com una llista de Python. Els elements es converteixen al tipus Python integrat compatible més proper mitjançant la funció d'element. Quan 'a.ndim' és 0, aleshores la profunditat de la llista és 0, i serà un escalar Python senzill, no qualsevol llista.

numpy.ndarray.tolist

Sintaxi

 ndarray.tolist() 

Paràmetres

Aquesta funció no té arguments ni paràmetres.

Retorna: y: objecte, o llista d'objectes o llista d'objectes

Aquesta funció retorna la llista possiblement imbricada d'elements de matriu.

Nota
Podem tornar a crear la matriu mitjançant a=np.array(a.tolist()), però de vegades pot perdre precisió.

Exemple 1:

Si ho farem servir a.tolist() per a una matriu 1D, serà gairebé el mateix que llista (a) , excepte això llistar converteix escalars numpy en escalars Python.

 import numpy as np a = np.uint32([6, 2]) a a_list=list(a) a_list type(a_list[0]) a_tolist=a.tolist() a_tolist type(a_tolist[0]) 

Sortida:

 array([6, 2], dtype=uint32) [6, 2] [6L, 2L] 

En el codi anterior

  • Hem importat numpy amb el nom d'àlies np.
  • Hem creat una matriu 'a' utilitzant la funció np.uint32().
  • Hem declarat la variable 'a_list' i assignat el valor retornat de la llista () funció.
  • Hem intentat imprimir el valor de 'a', 'a_list' i el tipus de a_list.
  • Hem declarat la variable a_tolist i assignat el valor retornat de ndarray.tolist() .
  • Finalment, hem intentat imprimir el tipus i el valor de ' a_tolist '.

A la sortida, mostra una llista i el tipus els elements del qual es transformen des de la matriu font.

Exemple 2:

Per a una matriu bidimensional, llistar s'aplica de manera recursiva.

 import numpy as np a = np.array([[11, 21], [31, 41]]) b=a.tolist() a b 

Sortida:

 array([[11, 21], [31, 41]]) [[11, 21], [31, 41]] 

En el codi anterior

  • Hem importat numpy amb el nom d'àlies np.
  • Hem creat una matriu bidimensional 'a' utilitzant la funció np.array().
  • Hem declarat la variable 'b' i hem assignat el valor retornat de a.tolist() funció.
  • Finalment, hem intentat imprimir el valor de ' b '.

A la sortida, mostra una llista els elements de la qual es transformen des de la matriu font.

Exemple 3:

 import numpy as np x = np.array(5) list(x) y=x.tolist() y 

Sortida:

 Traceback (most recent call last): File '', line 1, in TypeError: iteration over a 0-d array 5