Модулът numpy предоставя функция numpy.ndarray.tolist() , използвани за преобразуване на елементите от данни на масив в списък. Тази функция връща масива като an a.my- нива дълбоко вложен списък от скалари на Python.
С прости думи, тази функция връща копие на елементите на масива като списък на Python. Елементите се преобразуват в най-близкия съвместим вграден тип Python чрез функцията item. Когато 'a.ndim' е 0, тогава дълбочината на списъка е 0 и това ще бъде прост скалар на Python, а не какъвто и да е списък.
Синтаксис
ndarray.tolist()
Параметри
Тази функция няма аргументи или параметри.
Връща: y: обект или списък с обекти или списък с обекти
Тази функция връща евентуално вложен списък от елементи на масива.
Забележка
Можем да създадем отново масива чрез a=np.array(a.tolist()), но понякога може да загуби прецизност.
Пример 1:
Ако ще използваме a.tolist() за 1D масив тогава ще бъде почти същото като списък(а) , освен това tolist преобразува numpy скалари в 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])
Изход:
array([6, 2], dtype=uint32) [6, 2] [6L, 2L]
В горния код
- Импортирахме numpy с псевдоним np.
- Създадохме масив 'a' с помощта на функцията np.uint32().
- Декларирахме променливата 'a_list' и присвоихме върнатата стойност на списък () функция.
- Опитахме се да отпечатаме стойността на 'a', 'a_list' и типа на a_list.
- Декларирахме променливата a_tolist и присвоихме върнатата стойност на ndarray.tolist() .
- Накрая се опитахме да отпечатаме типа и стойността на ' a_tolist '.
В изхода той показва списък и типа, чиито елементи са трансформирани от изходния масив.
Пример 2:
За двумерен масив, tolist се прилага рекурсивно.
import numpy as np a = np.array([[11, 21], [31, 41]]) b=a.tolist() a b
Изход:
array([[11, 21], [31, 41]]) [[11, 21], [31, 41]]
В горния код
- Импортирахме numpy с псевдоним np.
- Създадохме двуизмерен масив 'a' с помощта на функцията np.array().
- Декларирахме променливата 'b' и присвоихме върнатата стойност на a.tolist() функция.
- Накрая се опитахме да отпечатаме стойността на ' b '.
В изхода той показва списък, чиито елементи са трансформирани от изходния масив.
Пример 3:
import numpy as np x = np.array(5) list(x) y=x.tolist() y
Изход:
Traceback (most recent call last): File '', line 1, in TypeError: iteration over a 0-d array 5