marcos
Profilo di
Nome | marcos |
---|---|
Indirizzo email | m77it@yahoo.it |
Avatar | |
Messaggi | 2 |
-
- 2024-10-14 16:12:11
- Re: Calcolo disposizioni con ripetizione - itertools?
- Forum >> Principianti
- nuzzopippo said @ 2024-10-14 09:09:51:Grazie
Funziona benissimo.
Ho rediretto l'output su un file.
Ciao ... beh, forse esistemarcos said @ 2024-10-14 08:09:51:Ho visto che esiste il modulo itertools ma non mi pare contempli questo caso.
Python 3.12.3 (main, Sep 11 2024, 14:17:37) [GCC 13.2.0] on linux Type "help", "copyright", "credits" or "license()" for more information. import itertools data = ['a', 'b', 'c'] result = itertools.combinations_with_replacement(data, 4) for c in result: print(''.join(c)) aaaa aaab aaac aabb aabc aacc abbb abbc abcc accc bbbb bbbc bbcc bccc cccc
Leggendo meglio, forse vorresti ottenere "Tutte" le possibili combinazioni, dato che quella sopra non è completa ... in tal caso combinando con itertools.permutations e smanettando un pochino si potrebbe (occhio sono TANTE)
comp = [] result = itertools.combinations_with_replacement(data, 4) for e in result: per = itertools.permutations(e) for c in per: comp.append(''.join(c)) final = sorted(list(set(comp))) for v in final: print(v) aaaa aaab aaac aaba aabb aabc aaca aacb aacc abaa abab abac abba ... accc baaa baab baac baba ... etc ...
--- Ultima modifica di nuzzopippo in data 2024-10-14 09:43:20 ---
-
- 2024-10-14 08:09:51
- Calcolo disposizioni con ripetizione - itertools?
- Forum >> Principianti
-
Ciao,
dovrei calcolare tutte le disposizioni di una lista di elementi in cui gli elementi possono esser ripetuti.
Ad es. se gli elementi sono [a,b,c] e la stringa finale composta di 4 elementi dovrei ottenere
aaaa
aaab
cccc
abcd
e cosi' via
Il numero di stringhe in output e' n^k dove n = numero di elementi nella lista e k= lunghezza della stringa
Ho visto che esiste il modulo itertools ma non mi pare contempli questo caso.
Esiste un sistema veloce?
Grazie
Marco