我读过What is the fastest way to flatten arbitrarily nested lists in Python?,它很好地回答了如何在Python中展平任意嵌套的列表。然而,很多时候,列表嵌套的深度是任意的,但是是同质的。同构嵌套列表在具有相同深度的所有列表元素之间具有相同的结构。你知道吗
[[0, 1], [2, 3]]
[0, 1, [2, 3]]
最好的方法是平展这种低深度的列表:惯用的列表理解:[inner for outer in seq for inner in outer]
对于更大深度的列表,这很快就会变得很难处理,需要占用许多行来表达一个简单的想法。考虑一下:[more_inner inner for outer in seq for inner in outer for more_inner in inner]
这很难理解,而且是一个麻烦。你知道吗
对于这种常见的特殊情况,我们能否提出一种既可读又高效的具体解决方案?你知道吗
以下是我的解决方案:
相关问题 更多 >
编程相关推荐