私はリストを言っlis1 = [1,2,3]
て、上記のリストのサブセットのリストを言う
lis2 = [[1,2],[2,3],[3],[1],[2]]
lis1 のすべてのアイテムが組み合わせに存在するように、lis2 のすべての組み合わせを生成したいと考えています。
たとえば。これは有効な組み合わせです
そのような組み合わせの 1 つは( ie[[1,2],[2,3]]
のすべての項目がその中に存在する) です。lis1
[1,2,3]
一方、これはそうではありません
[[1,2],[1],[2]] # (3 is not present in it)
私がしたことは、この関数を介してlis2のパワーセットを生成することでした
from itertools import chain, combinations
def powerset(iterable):
s = list(iterable)
return chain.from_iterable(combinations(s, r) for r in range(1,len(s)+1))
しかし、明らかなように、返されるセットには型の組み合わせが含まれています
[[1,2],[1],[2]] # (3 is not present in it)
lis1 のすべてのアイテムを含む組み合わせを確認するにはどうすればよいですか