import itertools def all_subsets(l): res = [] for subset_len in range(1, len(l)+1): for combo in itertools.combinations(l, subset_len): res.append(combo) return res data = [1, 2, 3, 4] print(all_subsets(data))
Standard input is empty
[(1,), (2,), (3,), (4,), (1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4), (1, 2, 3), (1, 2, 4), (1, 3, 4), (2, 3, 4), (1, 2, 3, 4)]