I have an input as: [a, b, c, *]
If my input has * then I need to create 29 different versions (29 letters in Turkish alphabet) of the input list like below. I also need to remove * from new arrays:
harfler: [‘a’, ‘b’, ‘c’, ‘a’]
harfler: [‘a’, ‘b’, ‘c’, ‘b’]
harfler: [‘a’, ‘b’, ‘c’, ‘z’]
I tried to use for loop but didn’t get what I want. How can I achieve this?
letters=input("Enter the letters") alphabet=['a','b','c'] letters_array= letters=letters.join(alphabet) for character in alphabet: letters=letters.join(alphabet) letters_array.append(letters) print(letters_array)
I think what you want is something like this:
dummy = list('abc*') alphabet = ['a', 'b', 'c'] if '*' in dummy: starIdx = dummy.index('*') allVersions =  for c in alphabet: newVersion = dummy.copy() newVersion[starIdx] = c allVersions.append(newVersion) print(allVersions)
This would output:
[['a', 'b', 'c', 'a'], ['a', 'b', 'c', 'b'], ['a', 'b', 'c', 'c']]
Mind you, that is only for one star in your input. More stars, and you run into combinations of versions.