sagen, dass ich eine Stringliste haben:alle möglichen Kombinationen von Zeichen in einem String generieren
li = ['a', 'b', 'c']
Ich möchte eine neue Liste erstellen, so dass jeder Eintrag der neuen Liste eine Verkettung von einer Auswahl von 3 Einträge in der ursprünglichen Liste. Man beachte, daß jeder Eintrag wiederholt gewählt werden kann:
new_li=['abc', 'acb', 'bac', 'bca', 'cab', 'cba', 'aab', 'aac',....'aaa', 'bbb', 'ccc']
Der brutale Kraft Weg ist ein 3-fach für Schleife verschachtelt zu konstruieren und legt jeweils 3-Kombination in die neue Liste. Ich habe mich gefragt, ob es irgendeinen pythonischen Weg gibt, damit umzugehen? Vielen Dank.
Update: Später werde ich die neue Liste in einen Satz konvertieren, so dass der Auftrag nicht ohnehin keine Rolle.
Muss es zufällig sein? Wie lange sollte die Liste sein? –
@ whackamadoodle3000 Bitte beachten Sie die Updates. Die Länge der Liste sollte 3^n sein, wobei n die Anzahl der Einträge in der ursprünglichen Liste – James