Создай на Python проект «Генератор сложных паролей». Используй собственные функции, а также решения из модуля random. Твой генератор должен выводить пароль по условиям, которые задаёт пользователь.
при запуске программа описывает, что она может делать;
в коде есть два типа функций: написанные вручную и из модуля random;
программа умеет создавать пять и более типов паролей по условиям;
код сопровождается комментариями, описывающими назначение его частей.
python
import random
import string
def generate_password(length, use_lowercase, use_uppercase, use_digits, use_symbols):
# Создаем пустую строку для пароля
password = ""
# Создаем список символов, которые могут использоваться в пароле
available_characters = ""
# Проверяем, какие типы символов пользователь хочет использовать
if use_lowercase:
available_characters += string.ascii_lowercase
if use_uppercase:
available_characters += string.ascii_uppercase
if use_digits:
available_characters += string.digits
if use_symbols:
available_characters += string.punctuation
# Генерируем пароль нужной длины
for _ in range(length):
password += random.choice(available_characters)
return password
# Описание программы
print("Добро пожаловать в генератор сложных паролей!")
print("Вы можете создать пароль, используя различные типы символов.")
# Получаем от пользователя параметры для генерации пароля
length = int(input("Введите длину пароля: "))
use_lowercase = input("Использовать строчные буквы? (y/n): ").lower() == "y"
use_uppercase = input("Использовать заглавные буквы? (y/n): ").lower() == "y"
use_digits = input("Использовать цифры? (y/n): ").lower() == "y"
use_symbols = input("Использовать специальные символы? (y/n): ").lower() == "y"
# Генерируем пароль с заданными параметрами
password = generate_password(length, use_lowercase, use_uppercase, use_digits, use_symbols)
# Выводим сгенерированный пароль
print("Сгенерированный пароль:", password)
Как это работает:
1. На первых строках мы импортируем модули `random` и `string`, которые нам понадобятся для генерации пароля.
2. Далее определяем функцию `generate_password`, которая будет генерировать пароль с заданной длиной и типами символов.
3. Внутри функции мы создаем пустую строку `password`, в которую будем добавлять символы для пароля.
4. Затем создаем пустую строку `available_characters`, в которую будут добавляться все доступные символы для пароля.
5. Далее, в зависимости от выбора пользователя, мы добавляем различные типы символов в `available_characters`.
6. После этого мы генерируем случайный символ из `available_characters` и добавляем его в `password` нужное количество раз (в соответствии с заданной длиной пароля).
7. Возвращаем сгенерированный пароль из функции.
8. Далее следует описание программы и запрос параметров для генерации пароля от пользователя.
9. Получаем от пользователя длину пароля и необходимость использования различных типов символов.
10. Вызываем функцию `generate_password` с заданными параметрами и сохраняем сгенерированный пароль в переменную `password`.
11. Выводим сгенерированный пароль на экран.
Таким образом, наш генератор паролей позволяет пользователю создавать пароли с заданной длиной и различными типами символов.Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет