Генератор паролей на Python

Статьи

Введение

Пароли являются важной частью защиты нашей информации в сети. Создание крепких и случайных паролей может повысить безопасность наших онлайн аккаунтов. В ходе данной статьи мы напишем программу «Генератор паролей» на языке программирования Python.

Импорт модулей random и string

Для генерации случайных паролей мы будем использовать стандартные модули random и string.

Модуль random предоставляет методы для генерации случайных чисел и выбора случайных элементов из последовательностей.

Модуль string содержит набор полезных констант:

  • ascii_letters — возвращает все буквы алфавита в верхнем и нижнем регистрах.
  • digits — возвращает все цифры.
  • punctuation — возвращает все знаки пунктуации.

Импортируем оба модуля:

import random
import string

Генерация пароля

Для генерации пароля мы создадим функцию, которую назовём generate_password, которая будет принимать длину пароля в качестве аргумента. Внутри функции сначала будут объединяться все символы из ascii_letters, digits и punctuation при помощи метода join(), тем самым создавая нужный нам алфавит:

import random
import string


def generate_password(length):
    characters = string.ascii_letters + string.digits + string.punctuation

Далее при помощи генератора будет генерироваться пароль. Метод random.choice() позволяет получать случайный символ из нашего алфавита (characters) во время каждой итерации, тем самым заполняя наш итоговый пароль случайными символами:

import random
import string


def generate_password(length):
    characters = string.ascii_letters + string.digits + string.punctuation
    password = ''.join(random.choice(characters) for _ in range(length))

По итогу функция будет возвращать получившийся пароль:

import random
import string


def generate_password(length):
    characters = string.ascii_letters + string.digits + string.punctuation
    password = ''.join(random.choice(characters) for _ in range(length))
    return password

Запрос длины пароля и вывод результата

Наша функция готова, теперь добавим возможность пользователю ввести желаемую длину пароля:

import random
import string


def generate_password(length):
    characters = string.ascii_letters + string.digits + string.punctuation
    password = ''.join(random.choice(characters) for _ in range(length))
    return password


password_length = int(input("Введите длину пароля: "))

Далее будет вызываться функция generate_password() с передачей в неё желаемой длины пароля:

import random
import string


def generate_password(length):
    characters = string.ascii_letters + string.digits + string.punctuation
    password = ''.join(random.choice(characters) for _ in range(length))
    return password


password_length = int(input("Введите длину пароля: "))
password = generate_password(password_length)

В конце будет выводиться пароль:

import random
import string


def generate_password(length):
    characters = string.ascii_letters + string.digits + string.punctuation
    password = ''.join(random.choice(characters) for _ in range(length))
    return password


password_length = int(input("Введите длину пароля: "))
password = generate_password(password_length)
print("Сгенерированный пароль:", password)

Примеры

# Введите длину пароля: 5
# Сгенерированный пароль: ]J)mf
# Введите длину пароля: 10
# Сгенерированный пароль: gF.N$DD2Sc
# Введите длину пароля: 15
# Сгенерированный пароль: -qNmYO3"d^n+5_z

Заключение

В ходе статьи мы с Вами написали программу «Генератор паролей» на языке программирования Python. Надеюсь Вам понравилась статья, желаю удачи и успехов! 🙂

Admin
Admin
IT Start