Найти в Дзене

Как написать "генератор паролей" на языке программирования Python.

Добрый вечер господа (хоть я это и пишу ночью). Сегодня я бы хотел поговорить о таком скрипте как "Генератор паролей", и как же его написать на программном языке "Python" Сразу скажу, что я использую версию Python 3.8.3, так-как по мне, она наиболее удобная в использовании (тем-более, у меня 32-х битная система Windows 7). Sublime Text 3 — это текстовой редактор, которым я и сейчас пользуюсь. Для начала, зададимся вопросом: "Для чего он вообще нужен?"
У Вас бывало такое, что Вы не можете придумать одновременно и нормальный и безопасный пароль? У меня, да. Если нет, тогда зачем вообще я пишу этот пост?:)
Естественно, существует много сайтов по генерации паролей. Я могу их перечислить, но за рекламу мне так никто и не платит:) Тем-более, это не по теме поста. Генератор можно использовать в разных случаях: Давайте уже перейдем к теме поста, ведь пост сам себя не напишет. Что-же он из себя представляет?
Это обычный код, записанный в текстовом файле, генерирующий информацию, котор
Оглавление

Добрый вечер господа (хоть я это и пишу ночью). Сегодня я бы хотел поговорить о таком скрипте как "Генератор паролей", и как же его написать на программном языке "Python"

Сразу скажу, что я использую версию Python 3.8.3, так-как по мне, она наиболее удобная в использовании (тем-более, у меня 32-х битная система Windows 7). Sublime Text 3 — это текстовой редактор, которым я и сейчас пользуюсь.

Для начала, зададимся вопросом: "Для чего он вообще нужен?"


У Вас бывало такое, что Вы не можете придумать
одновременно и нормальный и безопасный пароль? У меня, да. Если нет, тогда зачем вообще я пишу этот пост?:)

Естественно, существует
много сайтов по генерации паролей. Я могу их перечислить, но за рекламу мне так никто и не платит:) Тем-более, это не по теме поста.

Генератор можно использовать в разных случаях:

  • Когда пытаешься придумать хороший пароль.
  • Когда пытаешься взломать страницу друга (естественно, это в шутку)

Давайте уже перейдем к теме поста, ведь пост сам себя не напишет.

Что-же он из себя представляет?


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

Он выглядит примерно так:

Прошу прощения за плохое качество.
Прошу прощения за плохое качество.

Давайте опишу каждую часть кода:

-2

Для начала, импортируем модуль random, благодаря которому будет генерироваться вся информация для нашего генератора. Без данного модуля, у нас не будет генерироваться информация.

Скажу сразу, chars — это строчка, из которой извлекается информация для полной генерации. То есть, без данной строчки, у нас не будет генерироваться нужная информация.

Следующая часть кода.
Следующая часть кода.

Чтобы наш код, постоянно не генерировал всякую ненужную информацию, надо её сократить до определенного числа символов.

В этом нам помогут строчки number (с англ. число) и length (с англ. длина). Они будут ограничивать генерацию информации, которую мы будем использовать заместо нашего пароля.
Скажу сразу,
int (который стоит в той части кода), даёт Python'у знать, что, то что мы введём, является числом.

Дабы (на всякий случай) не вызвать ошибок в генерации, мной было решено переписать код таким образом:

Переписанная предыдущая часть кода.
Переписанная предыдущая часть кода.

Как мы с Вами видим, число символов в коде уменьшилось, но смысл кода остался. Когда мы с Вами введём число количества паролей (или же число длины пароля), Python будет сразу знать, что мы ввели цифры.

Последняя часть кода.
Последняя часть кода.

Как мы видим, тут очень запутанно, ведь, новички даже не знают, о чём идёт код. Я сейчас расскажу.
Данная часть кода
очень важна, ведь именно она генерирует всю информацию из строчки chars (про которую, я говорил недавно). Тут же, мы видим нам знакомые number и length. Они отвечают за число паролей и их длину.

for n in range(number):

Данная строчка отвечает за ограничение числа паролей. Без данной строчки, генерация будет вечная, и её никак нельзя потом остановить (шуткааа с:).

password =''

А данная строчка, добавляет параметр "сохранения" информации, которую сгенерировал наш генератор.

for i in rande(length):

ООоооо, данная строчка отвечает за длину информации, сгенерированной в нашем генераторе паролей. То есть, чем больше число в length, тем-больше длина нашего пароля.

password += random.choise(chars)

В данной строчке, больше смысла, чем в других, так-как в ней используется модуль random. Из нашей строчки chars, модуль random выбирает несколько или более символов, из которого будет состоять информация в строчке password (зависит от числа в строчке length)

print(password)

А благодаря данной строчке, нам будет показан список паролей, сгенерированными нашим генератором паролей.

Очень благодарю за прочтение данного поста, ведь над ним я старался всю ночь. Надеюсь, Вы воспользуетесь данными знаниями о генерации
и данным генератором в других ваших кодах, ведь это не только генератор паролей, но и обычный генератор какой-либо информации (достаточно изменить строчку
chars. На этом всё, всего доброго, я спать.