list()
to convert the given value to a list.range()
and itertools.combinations()
to create a generator that returns all subsets.itertools.chain.from_iterable()
and list()
to consume the generator and return a list.from itertools import chain, combinations def powerset(iterable): s = list(iterable) return list(chain.from_iterable(combinations(s, r) for r in range(len(s)+1)))
powerset([1, 2]) # [(), (1,), (2,), (1, 2)]
Subscribe to get resources directly to your inbox. You won't receive any spam! ✌️