python如何把数组变成元组_在Python中将数组(numpy数据类型)转换为元组(本地数据类型)...

列表理解很好地完成了这项工作:In [191]: a = np.array([np.array([1.]), np.array([2, 3]), np.array(['a', 'b', 'c'])])

In [192]: a

Out[192]:

array([array([ 1.]), array([2, 3]),

array(['a', 'b', 'c'],

dtype='

In [193]: [tuple(i) for i in a]

Out[193]: [(1.0,), (2, 3), ('a', 'b', 'c')]

In [194]: tuple([tuple(i) for i in a])

Out[194]: ((1.0,), (2, 3), ('a', 'b', 'c))

将数组列表包装在另一个数组层中没有多大作用。dtype对象的数组只是一个带有ndarray包装的列表。a的大多数操作将其视为一个列表。在

^{pr2}$

更正-如果要转换内部数组的元素,我们需要首先使用tolist()。tuple(i)类似于list(i),在第一维上迭代,而{}执行递归转换。在In [204]: type([tuple(i.tolist()) for i in a][0][0])

Out[204]: float

当我们将list和{}应用于2d数组时,它们之间的区别的更多信息:In [210]: np.ones((2,3)).tolist()

Out[210]: [[1.0, 1.0, 1.0], [1.0, 1.0, 1.0]]

In [211]: list(np.ones((2,3)))

Out[211]: [array([ 1., 1., 1.]), array([ 1., 1., 1.])]

In [212]: tuple(np.ones((2,3)))

Out[212]: (array([ 1., 1., 1.]), array([ 1., 1., 1.]))

没有totuple()方法,也没有任何东西可以快速而简单地将列表的嵌套列表转换为元组的嵌套元组。在

tolist不通过dtype=object层递归:In [214]: a.tolist()

Out[214]:

[array([ 1.]), array([2, 3]), array(['a', 'b', 'c'],

dtype='

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值