繁体   English   中英

如何将 3D 列表转换为 python 中的二维列表?

[英]How can I convert a 3D list into a 2D list in python?

这是我的代码:

[[[3], [4]], [[5], [6]], [[7], [8]]]

我怎样才能把它改成:

[[3], [4], [5], [6], [7], [8]]

您想展平输入列表的单个级别,请使用列表理解尝试以下解决方案:

lst = [[[3], [4]], [[5], [6]], [[7], [8]]]
[e for sl in lst for e in sl]
=> [[3], [4], [5], [6], [7], [8]]

尝试这个:

import numpy as np
a = np.array([[[3],[4]],[[5],[6]],[[7],[8]]])
b = a.reshape(6,1)

未压缩的或很长的路:

l3d = [[[3], [4]], [[5], [6]], [[7], [8]]]
l2d = []
for e1 in l3d:
   for e2 in e1:
      l2d.append(e2)
# Provided list
lst = [[[3], [4]], [[5], [6]], [[7], [8]]]

# To do this we are going to import chain from itertools
from itertools import chain

final = list(chain(*lst))

print(final)  # Output: [[3], [4], [5], [6], [7], [8]]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM