Python | Генератор случайных паролей с использованием Tkinter

| | | | | | | | | | | | | | | | | | | | |

Давайте создадим простое приложение, которое может случайным образом генерировать надежные пароли с помощью модуля Python import random import pyperclip from tkinter import * from tkinter.ttk import *

Below это реализация:


# Программа Python для генерации случайного
# пароля с использованием модуля Tkinter

импорт случайный

импорт pyperclip

from tkinter импортировать *

from tkinter .ttk import *


# Функция для вычисления пароля

def low():

entry.delete( 0 , END)


# Получить длину пароля

length = var1.get()

нижний = "abcdefghijklmnopqrstuvwxyz"

upper = " ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz "

цифры = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789! @#$%^&Amp; * ()"

пароль = " "

# если выбрана низкая прочность

if var.get() = = 1 :

для i in диапазон ( 0 , длина):

пароль = пароль + random.choice (нижний)

return password


# если выбрана средняя надежность

elif var.get () = = 0 :

for i in range ( 0 , длина):

пароль = пароль + random. выбор (верхний)

return пароль


# если выбранная сила сильна

elif var.get() = = 3 :

for i in range ( 0 , length):

пароль = пароль + random.choice (digits)

return пароль

else :

print ( "Выберите вариант" )

< br>


# Функция для генерации пароля

def сгенерировать ():

password1 = низкий ()

entry.insert( 10 , пароль1)



# Функция для копирования пароля в буфер обмена

def copy1 ( ):

random_password = entry.get ()

pyperclip.copy (random_password)


# Основная функция


# создать окно GUI

корень = Tk ()

var = IntVar ()

var1 = IntVar()


# Заголовок вашего графического окна

root.title ( "Генератор случайных паролей" )


# создайте ярлык и опубликуйте для показа
# сгенерированный пароль

Случайный_пароль = Метка (корень, текст = " Password " )

Random_password.grid (row = 0 )

запись = Entry (root)

entry.grid (строка = 0 , столбец = 1 )


# создайте метку для длины пароля

c_label = Метка (корень, текст = "Длина" )

c_label.grid (row = 1 )


# Создать кнопки, которые не будут копировать
# пароль в буфер обмена и генерировать
# который будет сгенерировать пароль

copy_button = Button ( root, text = "Копировать" , command = copy1)

copy_button.grid (строка = 0 , столбец = 2 )

generate_button < класс кода ="ключевое слово"> = <код class = "plain"> Кнопка (корень, текст = "Создать" , команда = generate)

generate_button .grid (строка = 0 , столбец = 3 )


# Переключатели для принятия решений
# Надежность пароля
# Средняя по умолчанию

radio_low = Radiobutton (корень, текст = "Low" , переменная = var, value = 1 )

radio_low.grid (row = 1 , столбец = 2 , липкий = ’E’ )

radio_middle = Radiobutton (root, text = "Medium" , переменная = var, value = 0 )

radio_middle.grid (строка = 1 , столбец = 3 , sticky = ’E’ )

radio_strong = Radiobutton (root, text = "Strong" , переменная = var, value = 3 )

radio_strong.grid ( строка = 1 , столбец = <класс кода ="значение "> 4 <класс кода = "обычный">, липкий = ’E’ )

combo = Combobox (root, textvariable = var1)


# Поле со списком для длины вашего пароля

combo [ ’ values’ ] = ( 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 ,

17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 ,

26 , 27 , 28 , 29 , 30 , 31 , 32 , "Длина" )

combo.current ( 0 )

combo.bind ( ’"& л; ComboboxSelected" >’ )

combo.grid (column = 1 , row = 1 )


# запустить графический интерфейс
root.mainloop()

Вывод: