Я пытаюсь получить все перестановки буквенных символов для строки и добавить их в один список следующим образом:
allperm('an') should produce:
['an', 'aN', 'An', 'AN']
но мой вывод состоит из нескольких списков:
['a', 'n']
['a', 'N']
Это мой текущий код
def allperm(password):
n = len(password)
#2^n permuations
max = 1 << n
#lowercase password (base)
password = password.lower()
#get all permutations
for i in range(max):
perm = [k for k in password]
for j in range(n):
if (((i >> j) & 1) == 1):
perm[j] = password[j].upper()
#add to list
temp = ""
for i in perm:
temp += i
return(temp)