![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
bi01 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 20.5.2012 Репутация: нет Всего: нет |
Здравствуйте уважаемые посетители и разработчики!
Есть задачка на создание всех возможных паролей методом рекурсии. Так как я в изучении языка новичок, к как не бился не получается решить эту задачу. Условия - есть произвольный словарь/алфавит символов и есть произвольная длина пароля. Нужно сделать базу всех возможных паролей. Т.е. по сути перебор всех значений (рекурсия по 2-хмерному массиву неопределенной длины), включая(!) отдельные символы алфавита. Например имеем: alf = 'abcdefghijklmnopqrstuvwxyz' count = 2 # тогда всевозможное количество вариантов будет равно: all_count = count**len(alf) + len(alf) # Переменная, где будут храниться все значения allpassw = [] # сама рекурсионная функция def recursion(dic, n): global allpassw if n <= 0: return 1 else: for i in dic: allpassw.append(i) return allpassw+recursion(dic, n-1) # Вызываем процедуру recursion(alf, count) # Печатаем результат print allpassw Второй вариант, который я рассматривал был связан с функциями-генераторами (yield). Но, к сожалению так ничего не получилось. Подскажите, как решить эту задачу или где можно почитать об этой теме. Спасибо. |
|||
|
||||
Karadul |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.5.2006 Репутация: нет Всего: 1 |
Это сообщение отредактировал(а) Karadul - 20.5.2012, 15:57 |
|||
|
||||
bi01 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 20.5.2012 Репутация: нет Всего: нет |
Karadul, спасибо за предложенный вариант. То что нужно!
|
|||
|
||||
Karadul |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.5.2006 Репутация: нет Всего: 1 |
Спасибо в репу скажи.
|
|||
|
||||
bi01 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 20.5.2012 Репутация: нет Всего: нет |
Мало постов на этом форуме. Пока не могу
|
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Python: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |