【发布时间】:2017-08-04 09:12:41
【问题描述】:
我有一个小问题,我缺乏相当多的 Python 经验。 假设一个列表:
list=[[40, 20, 45, 40], [[20, 10, 10, 30, 45, 20], [30, 20, 20, 30]]]
我想做一些我称之为“部分展平”的事情,因为预期的输出是:
[[40, 20, 45, 40], [20, 10, 10, 30, 45, 20], [30, 20, 20, 30]]
注意list 之前的长度为2,而预期输出的长度为3。问题是我事先不知道list 中的哪个元素嵌套更深一层。
This answer 和许多其他人并没有太大帮助,因为扁平化太远了。问题之后的输出是:
list=[40, 20, 45, 40, [20, 10, 10, 30, 45, 20], [30, 20, 20, 30]]
(请注意列表中前 4 个元素缺少括号。
【问题讨论】:
-
那么,您想要所有最内层列表的列表吗?是否有像
[1,2,[3,4]]这样的输入列表,如果有,应该如何展平? -
@tobias_k 这样的输入列表是不可能的。
-
您告诉我们该特定示例的输出是什么,我理解这一点。但这个决定是基于什么?什么应该展平的规则是什么?完全不清楚逻辑应该是什么样的?一旦你到了那里,考虑到你已经看到并使用过其他扁平化方法,你自己解决了什么问题?
-
请不要打电话给
list列表