Buradaki mantığı kullanırsak bu kod işi görüyor:
import itertools
sayılar = "123456789"
for ayıraç_sayısı in range(7):
ayıraçlar = itertools.combinations(range(1, 9), ayıraç_sayısı)
for ayıraç in ayıraçlar:
## print(ayıraç)
sayı_listesi = []
start = 0
for i in ayıraç:
if not (e := sayılar[start:i]): continue
sayı_listesi.append(e)
start = i
if e := sayılar[start:]: sayı_listesi.append(e)
print(sayı_listesi)
Bir sayacı arttırın, ikinin üslerinden kalanına göre aralara - veya + koyarsınız.