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

新手上路,请多包涵

经过一些复杂的操作后,得到一个结果列表,比如 list1,它是一个不同数组的列表。

以下是 清单 1

 In [] : list1
Out [] :
       [array([ 10.1]),
        array([ 13.26]),
        array([ 11.0 ,  12.5])]

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

预期 清单 2

       [ [ 10.1],
        [ 13.26],
        [ 11.0 ,  12.5] ]

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

原文由 Liza 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 705
2 个回答

您可以在列表理解中使用 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]]

原文由 Vinícius Figueiredo 发布,翻译遵循 CC BY-SA 3.0 许可协议

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

 l = [arr.tolist() for arr in l]

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

原文由 miradulo 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题