Я создаю вложенный список, используя следующий код:
from itertools import combinations
def get_nested_list(arr, n, k):
iterator = 0
nest = []
for i in range(1, n):
for combo in combinations(arr, i):
odd_num = 0
for item in combo:
if item % 2 != 0:
odd_num += 1
if odd_num <= k:
iterator += 1
nest.append(combo)
nest = [list(i) for i in nest]
return nest
a = [1, 2, 3, 4]
b = len(a)
c = 1
print(get_nested_list(a, b, c))
Это мой вывод:
[[1], [2], [3], [4], [1, 2], [1, 4], [2, 3], [2, 4], [3, 4], [1, 2, 4], [2, 3, 4]]
Однако я получил такие элементы, как [1,2]
и [1,4]
которые имеют одинаковое значение х, [2, 4]
и [3, 4]
, которые имеют одинаковое значение у. Как я могу создать список с совершенно разными подсписками? Вот что я пытаюсь сделать sh:
[[1], [2], [3], [4], [1, 2], [2, 3], [3, 4], [2, 3, 4]]