Ich habe eine Liste ['a', 'b', 'c', 'd'] und brauche eine Liste ['a', 'ab', 'abc', 'abcd', 'b' , 'bc', 'bcd', 'c', 'cd', 'd'].Wie erstellt man eine sequentielle kombinierte Liste in Python?
Ich habe mir itertools angesehen, aber ich sehe nicht, wie man das funktioniert.
Für all combinations, würde der Code:
from itertools import permutations
stuff = ['a','b','c','d']
for i in range(0, len(stuff)+1):
for subset in permutations(stuff, i):
print(subset)
Was brauche ich, um nur sequentielle Kombinationen zurückkehren zu tun? Ich denke, ich könnte die Reihenfolge für jede Permutation überprüfen, wie ich gehe, aber das scheint nicht der beste Weg zu sein.
Sie benötigen '‚abc'' und '‘ d' 'auch dort? Weil ich sonst keine Logik in deiner Liste sehe. – Evert
Sollte ''abc'' auch in der Liste sein, die Sie erstellen möchten? – BrianO
so etwas wie 'print ([''. Join (stuff [i: j]) für i in range (len (stuff)) für j in range (i + 1, len (stuff) +1)])' – njzk2