将列表列表分解为单独的列表python

时间:2016-07-29 12:51:41

标签: python list python-2.7 split

我目前有一个列表,如

L = [['E2', 'C1', 'A1', 'B1', 'C2'], ['C1', 'D1', 'A1'], ['C1', 'C2']]

我的目标是将L [i]与L [i + 1]进行比较以制作组。 例如,L [2]是L [0]的子集,所以我会消除它。我的两个不同列表是L [0]和L [1]。

为此,如果我能以某种方式将列表列表分解为不同的列表,则可以通过迭代cmp(L[i], L[i+1])轻松实现。通过不同的列表我的意思是,我将每个元素存储为单独的变量。 => L_1 = L [0],L_2 = L [1],L_3 = L [2]。

zip似乎只在两个列表之间做了一种映射。任何人都可以推荐一个功能吗?

1 个答案:

答案 0 :(得分:0)

您可以映射列表列表以创建集列表。如果然后迭代该列表,则可以检查它们是否是彼此的子集

LSets = map(set, L)

filteredL = filter(lambda s: not any(s.issubset(s2) for s2 in LSets if s != s2), LSets)