Генератор паролей с настройками

Улучшим простой генератор: пусть пользователь сам выбирает длину и то, включать ли цифры и спецсимволы.

Дрон Кодер — программирование для детей и взрослых в игровой форме. Начать бесплатно

Собираем набор символов по флагам

Набор символов складываем из частей в зависимости от ответов пользователя: буквы берём всегда, а цифры и спецсимволы добавляем, только если их попросили.

import string
alphabet = string.ascii_letters
if input('Цифры? y/n: ') == 'y':
    alphabet += string.digits
if input('Спецсимволы? y/n: ') == 'y':
    alphabet += '!@#$%'

Задаём длину и генерируем

Длину спрашиваем и превращаем в число через int. Дальше собираем пароль из случайных символов набора — как и в базовой версии.

import random
length = int(input('Длина: '))
pwd = ''.join(random.choice(alphabet) for _ in range(length))
print(pwd)

Гарантируем разные типы

Чтобы в пароле точно была хотя бы одна цифра и спецсимвол, можно добавить их принудительно, а затем перемешать пароль функцией random.shuffle по списку символов.

Частые вопросы

Как сделать надёжнее? Для реальных паролей замените random на secrets.

Что если набор пустой? Проверьте, что alphabet не пуст, иначе choice вызовет ошибку.

Начать игру бесплатно
Попробуй прямо здесь
Уровень 1

Задание

Все обучающие игры «Дрон Кодер»

Одна вселенная — много модулей. Программирование, математика и логика в одной игре: пиши код, считай, решай задачи — а дрон-фермер летит по полю и собирает урожай. В каждом модуле первый уровень бесплатный, без регистрации.

📈 Математика · алгебра и графики
📖 Русский язык