import itertools
list = ["a", "bb", "ccc"] #тут список слов. использоватся могут в любом порядке, но не более одного раза каждое
result = []
for i in range(1,len(list)+1):
for iter in itertools.permutations(list,i):
result.append("".join(iter))
print(result)
['a', 'bb', 'ccc', 'abb', 'accc', 'bba', 'bbccc', 'ccca', 'cccbb', 'abbccc', 'acccbb', 'bbaccc', 'bbccca', 'cccabb', 'cccbba']