Как сгенерировать пароль
Случайный пароль собирается из набора разрешённых символов: берём их по одному наугад нужное число раз.
Набор символов и длина
Сначала решаем, из чего собирать пароль. Модуль string даёт готовые наборы: буквы и цифры. Их можно сложить в одну строку и добавить спецсимволы.
import string
alphabet = string.ascii_letters + string.digits
print(alphabet)
Собираем пароль
Функция random.choice() берёт один случайный символ. Повторяем её в генераторе нужное число раз и склеиваем результат через join().
import random, string
alphabet = string.ascii_letters + string.digits
pwd = ''.join(random.choice(alphabet) for _ in range(12))
print(pwd)
Надёжнее: модуль secrets
Для настоящих паролей вместо random используют secrets — он создаёт по-настоящему непредсказуемые значения. Синтаксис почти тот же, меняется только имя функции.
import secrets, string
alphabet = string.ascii_letters + string.digits
pwd = ''.join(secrets.choice(alphabet) for _ in range(12))
print(pwd)
Частые вопросы
random или secrets? Для учёбы годится random, для реальных паролей — secrets.
Как менять длину? Поменяйте число в range — оно задаёт количество символов.
Начать игру бесплатно