numpy - ndarray.tolist()函数

numpy - ndarray.tolist()函数 首页 / Numpy入门教程 / numpy - ndarray.tolist()函数

numpy模块提供函数 numpy.ndarray.tolist(),该函数用于将数组的数据元素转换为列表。此函数以 a.ndim-level嵌套的Python标量列表返回数组。

简而言之,该函数将数组元素的副本作为Python列表返回。通过item函数将元素转换为最兼容的内置Python类型。当'a.ndim'为0时,列表的深度为0,它将是一个简单的Python标量,而不是任何列表。

numpy.ndarray.tolist

语法

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

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

Service Mesh实践指南 -〔周晶〕

邱岳的产品实战 -〔邱岳〕

编辑训练营 -〔总编室〕

Swift核心技术与实战 -〔张杰〕

安全攻防技能30讲 -〔何为舟〕

成为AI产品经理 -〔刘海丰〕

说透数字化转型 -〔付晓岩〕

爆款文案修炼手册 -〔乐剑峰〕

手把手带你搭建秒杀系统 -〔佘志东〕

好记忆不如烂笔头。留下您的足迹吧 :)