numpy.ndarray.tolist#
方法
- ndarray.tolist()#
将数组作为
a.ndim
级深度的嵌套 Python 标量列表返回。返回数组数据的副本,作为 (嵌套的) Python 列表。数据项通过
item
函数转换为最接近的兼容内置 Python 类型。如果
a.ndim
为 0,则由于嵌套列表的深度为 0,它将根本不是列表,而是一个简单的 Python 标量。- 参数:
- 无
- 返回值:
- y对象,或对象列表,或对象列表的列表,或...
数组元素的可能嵌套列表。
注释
数组可以通过
a = np.array(a.tolist())
重新创建,尽管这有时会损失精度。示例
对于一维数组,
a.tolist()
几乎与list(a)
相同,除了tolist
将 numpy 标量更改为 Python 标量>>> import numpy as np >>> a = np.uint32([1, 2]) >>> a_list = list(a) >>> a_list [1, 2] >>> type(a_list[0]) <class 'numpy.uint32'> >>> a_tolist = a.tolist() >>> a_tolist [1, 2] >>> type(a_tolist[0]) <class 'int'>
此外,对于二维数组,
tolist
递归地应用>>> a = np.array([[1, 2], [3, 4]]) >>> list(a) [array([1, 2]), array([3, 4])] >>> a.tolist() [[1, 2], [3, 4]]
此递归的基本情况是 0 维数组
>>> a = np.array(1) >>> list(a) Traceback (most recent call last): ... TypeError: iteration over a 0-d array >>> a.tolist() 1