Hier ist die Frage:generieren alle Kombinationen von einer Liste in Python
eine Liste der Elemente in Python gegeben, wie würde ich gehen alle möglichen Kombinationen der Elemente zu bekommen?
Es gibt mehrere ähnliche Fragen auf dieser Seite, die itertools.combine empfehlen die Verwendung, aber das gibt nur einen Teil von dem, was ich brauche:
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)
Wie Sie sehen, es gibt nur Elemente in einer strengen Ordnung , nicht zurück (2, 1), (3, 2), (3, 1), (2, 1, 3), (3, 1, 2), (2, 3, 1) und (3, 2 , 1). Gibt es eine Workaround? Ich kann mir nichts einfallen lassen.
Reihenfolge spielt keine Rolle in den Kombinationen, (2, 1) ist das gleiche wie (1, 2) –
Gute Frage. Obwohl Sie technisch eine eigene Funktion schreiben könnten, um diese Kombinationen zu erhalten. – Sam