Здесь вопрос:
Учитывая список элементов в Python, как мне пройти, чтобы получить все возможные комбинации элементов?
На этом сайте есть несколько похожих вопросов, которые предлагают использовать itertools.combine, но это возвращает только часть того, что мне нужно:
stuff = [1, 2, 3]
for L in range(0, len(stuff)+1):
for subset in itertools.combinations(stuff, L):
print(subset)
()
(1,)
(2,)
(3,)
(1, 2)
(1, 3)
(2, 3)
(1, 2, 3)
Как вы видите, он возвращает только элементы в строгом порядке, а не возвращает (2, 1), (3, 2), (3, 1), (2, 1, 3), (3, 1, 2), (2, 3, 1) и (3, 2, 1). Есть ли какое-то обходное решение? Кажется, я ничего не могу придумать.