Я использую функцию itertools.permutations
, чтобы создать список всех комбинаций символов в списке, а затем объединить результаты, как показано ниже:
from itertools import permutations
def iterate(it):
for x in it:
print("".join(list(x)))
k_c = "1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM. "
iterate(permutations(list(k_c),10))
Это то, что она производит:
>>>1234567890
123456789q
123456789w
123456789e
123456789r
123456789t
123456789y
123456789u
123456789i
123456789o
...
У меня проблема в следующем; Мне нужно создать строки длиной в 100 символов, такие как: 1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDJ1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDJ
, и программа остановится, так как это займет слишком много времени. T 1009 * Мне было интересно, возможно ли, чтобы программа просто возвратила указать строку c, например:
permutation_string(k_c,100,87)
>>> 1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDJ1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDJ
И он вернет 87-е значение в списке. Я понимаю, что это кажется странным вопросом, но любая помощь будет принята с благодарностью. Спасибо