numpyndarray.tolist()函数
numpy模块提供函数 numpy.ndarray.tolist(),该函数用于将数组的数据元素转换为列表。此函数以 a.ndim-level嵌套的Python标量列表返回数组。
简而言之,该函数将数组元素的副本作为Python列表返回。通过item函数将元素转换为最兼容的内置Python类型。当'a.ndim'为0时,列表的深度为0,它将是一个简单的Python标量,而不是任何列表。

语法
ndarray.tolist()
参数
该函数没有参数。
返回值:y:object或 object list
该函数返回可能嵌套的数组元素列表。
注意我们可以通过a = np.array(a.tolist())重新创建数组,但是有时会失去精度。
范例1:
如果我们将 a.tolist()用于一维数组,则它与 list(a)几乎相同,只是 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] <type 'numpy.uint32'> [6L, 2L] <type 'long'>
在上面的代码中
- 我们导入了别名为np的numpy。
- 我们使用np.uint32()函数创建了一个数组'a'。
- 我们已经声明了变量'a_list'并分配了 list()函数的返回值。
- 我们尝试打印'a','a_list'的值和a_list的类型。
- 我们已经声明了变量a_tolist并为其分配了返回值 ndarray.tolist()。
- 最后,我们尝试打印' a_tolist '的类型和值。
在输出中,它显示一个列表和类型,其元素是从源数组转换而来的。
范例2:
对于二维数组,列表是递归应用的。
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]]
在上面的代码中
- 我们导入了别名为np的numpy。
- 我们使用np.array()函数创建了二维数组'a'。
- 我们已经声明了变量'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 "<stdin>", line 1, in <module> TypeError: iteration over a 0-d array 5
祝学习愉快! (发现内容有误?请选中要编辑的内容 -> 右键 -> 修改 -> 提交!帮助我们改进教程质量)
精选教程推荐
👇 以下精选教程可能对您有帮助,拓展您的技术视野
暂无学习笔记,成为第一个分享的人吧!
您的笔记将帮助成千上万的学习者