вы можете использовать combinations
из библиотеки itertools
import itertools
my_list = [1, 2, 3]
for i in range(len(my_list)):
print(list(itertools.combinations(my_list, i + 1)))
, которая выводит
[(1,), (2,), (3,)]
[(1, 2), (1, 3), (2, 3)]
[(1, 2, 3)]
, теперь вы можете добавить длину каждого списка и добавить отсутствующие пустые списки(чтобы закончить иметь 3 списка) и вуаля - у вас есть результат