看看powerset
示例来自itertools recipes:
from itertools import chain, combinations
def powerset(iterable):
"list(powerset([1,2,3])) --> [(), (1,), (2,), (3,), (1,2), (1,3), (2,3), (1,2,3)]"
s = list(iterable)
return chain.from_iterable(combinations(s, r) for r in range(len(s)+1))
For a range直到给定列表长度的整数,使所有可能combinations and chain它们一起作为一个对象。