将数组列表转换为列表列表?

Liz*_*iza 6 python arrays numpy list

在一些复杂的操作之后,获得结果列表,例如list1,它是不同数组的列表.

以下是list1

In [] : list1
Out [] : 
       [array([ 10.1]),
        array([ 13.26]),
        array([ 11.0 ,  12.5])]
Run Code Online (Sandbox Code Playgroud)

想要将此列表转换为简单的列表列表而不是数组

预期清单2

      [ [ 10.1],
        [ 13.26],
        [ 11.0 ,  12.5] ]
Run Code Online (Sandbox Code Playgroud)

如果有任何不清楚的地方,请告诉我.

Vin*_*iar 7

您可以tolist()在列表理解中使用:

>>> [l.tolist() for l in list1]
[[0.0], [0.0], [0.0, 0.5], [0.5], [0.5], [0.5, 0.69], [0.69, 0.88], [0.88], [0.88], [0.88], [0.88, 1.0], [1.0, 1.1], [1.1], [1.1], [1.1], [1.1, 1.5], [1.5, 2.0], [2.0], [2.0]]
Run Code Online (Sandbox Code Playgroud)


mir*_*ulo 7

只需调用ndarray.tolist()每个成员数组.

l = [arr.tolist() for arr in l]
Run Code Online (Sandbox Code Playgroud)

这应该比在外层上构建NumPy数组然后调用更快.tolist().