Nainštalujte potrebný modul:
Modul pyperclip sa v tomto výučbe používa na kopírovanie náhodne vygenerovaného hesla, aby ho bolo možné niekde použiť. Spustením nasledujúceho príkazu nainštalujte pyperclip.
$ pip nainštalovať pyperclipPríklad-1: Implementujte jednoduchý generátor hesiel
Jednoduchý spôsob, ako vytvoriť generátor hesiel, ukázal nasledujúci skript. Na generovanie hesla bol vybraný veľký text zmiešaných znakov výberom znakov konkrétnej dĺžky. Dĺžka hesla bude prevzatá od používateľa. ukážka () funkcia náhodný modul slúži na výber znaku z textu a náhodného spojenia. Náhodne vygenerované heslo sa vytlačí neskôr.
# Importovať náhodný modulimport náhodne
# Nastaví zoznam znakov pre generovanie hesla
znaky = "01234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ & * () [] | / \?[chránené e-mailom] # $% ^ abcdefghijklmnopqrstuvwxyz "
# Vezmite si dĺžku hesla od používateľa
password_length = int (vstup ('Zadajte dĺžku hesla:'))
# Vytvorte heslo
heslo = "".pripojiť sa (náhodne.vzorka (znaky, dlzka hesla))
# Vytlačte vygenerované heslo
print ("Generované heslo:% s"% heslo)
Výkon:
12 zadal ako hodnotu dĺžky hesla a po vykonaní skriptu bolo vygenerované heslo s 12 znakmi.
Príklad 2: Implementácia generátora hesiel pomocou grafického používateľského rozhrania
Aplikácia generátora hesiel založená na GUI je užitočná pre používateľa na vygenerovanie náhodného hesla. Tkinter modul bol importovaný do skriptu na vytvorenie užívateľsky prívetivej aplikácie generátora hesiel. Náhodné a struna Boli importované moduly na generovanie náhodného hesla zmiešaním veľkých, malých písmen, číslic a špeciálnych znakov. Pyperclip modul slúži na kopírovanie vygenerovaného hesla pre vytváranie rôznych typov užívateľských účtov. Password_Generator () definovala funkcia generovania hesla a jeho uloženia do súboru heslo premenná. CopyPassword () funkcia definovala kopírovanie vygenerovaného hesla po vygenerovaní hesla. Bol deklarovaný objekt Tkinter, ktorý definuje okno aplikácie, kde budú pridané požadované widgety pre návrh aplikácie generátora hesiel. Prvý widget pre štítky definoval nastavenie štítku pre widget spinového poľa na zadanie dĺžky hesla. Druhý widget štítku definoval štítok widgetu textového poľa, kde sa bude zobrazovať vygenerované Heslo. Na generovanie hesla a kopírovanie hesla boli definované widgety s dvoma tlačidlami. Keď 'Generovať heslo ' je stlačené tlačidlo, Password_Generator () funkcia sa zavolá a náhodne vygenerované heslo sa zobrazí v textovom poli. Po vygenerovaní hesla, akKopírovať ' stlačíte tlačidlo a potom CopyPassword () funkcia sa bude kopírovať Heslo a text 'Heslo bolo skopírované“sa zobrazí nad tlačidlami.
# Importovať modul tkinterimportovať tkinter
# Importujte náhodné a reťazcové moduly
importovať náhodne, reťazec
# Importovať modul pyperclip
importovať pyperclip
# Definujte funkciu na generovanie náhodného hesla
def Password_Generator ():
heslo = "
pre n v rozsahu (lenPassword.get ()):
heslo = heslo + náhodne.výber (reťazec.ascii_uppercase + retazec.ascii_lowercase + retazec.číslice + reťazec.interpunkcia)
strPassword.nastaviť heslo)
# Definujte funkciu na kopírovanie vygenerovaného hesla
def CopyPassword ():
ak strPassword.dostať () != ":
pyperclip.copy (strPassword.dostať ())
lblmsg2 = tkinter.Štítok (win, text = „Heslo bolo skopírované“, font = „Ubuntu 12 tučné“, šírka = 15)
lblmsg2.miesto (x = 105, y = 120)
inak:
lblmsg2 = tkinter.Štítok (win, text = „Nie je čo kopírovať“, font = „Ubuntu 12 tučné“, šírka = 15)
lblmsg2.miesto (x = 105, y = 120)
# Definujte objekt, aby sa zobrazilo hlavné okno aplikácie
výhra = tkinter.Tk ()
# Nastavte názov hlavného okna
vyhrať.názov („Generátor náhodných hesiel“)
# Nastavte výšku a šírku hlavného okna
vyhrať.geometria („350 x 220“)
# Nastavte polohu okna
vyhrať.eval ('tk :: PlaceWindow . stred “)
# Nastaviť štítok pre dĺžku hesla
lblPassword = tkinter.Štítok (win, text = „Nastaviť dĺžku hesla“, font = „Ubuntu 15 tučné“)
lblHeslo.balenie()
# Nastavte dátový typ dĺžky hesla
lenPassword = tkinter.IntVar ()
# Nastavte limit pre hodnotu dĺžky
dĺžka = tkinter.Spinbox (výhra, od_ = 6, do_ = 16, textová premenná = lenPassword, šírka = 2)
dĺžka.balenie (pady = 10)
# Nastavte štítok pre pole hesla
lblmsg1 = tkinter.Štítok (win, text = „Generované heslo“, font = „Ubuntu 12“)
lblmsg1.balenie()
# Nastavte dátový typ poľa pre heslo
strPassword = tkinter.StringVar ()
# Definujte premennú pre pole hesla
textData = tkinter.Vstup (výhra, textová premenná = strPassword, šírka = 15)
textData.balenie()
# Tlačidlo Definovať pre volanie funkcie na vygenerovanie náhodného hesla
btnPassword = tkinter.Tlačidlo (win, text = "Generovať heslo", príkaz = Password_Generator)
btnPassword.balíček (padx = 50, pady = 5, strana = tkinter.DOĽAVA)
# Tlačidlo Definovať pre vyvolanie funkcie na skopírovanie hesla
btnCopy = tkinter.Tlačidlo (výhra, text = 'Kopírovať', príkaz = CopyPassword)
btnCopy.pack (strana = tkinter.DOĽAVA)
# Zavolajte na hlavný okruh Tkinteru a otvorte hlavné okno
vyhrať.mainloop ()
Výkon:
Po vykonaní skriptu sa zobrazí nasledujúce okno. 6 bola nastavená ako predvolená hodnota dĺžky hesla. Pred generovaním hesla môže používateľ hodnotu zvýšiť alebo znížiť.
Heslo s 8 znakmi bolo vygenerované po nastavení hodnoty dĺžky na 8 a stlačení klávesu Generovať heslo tlačidlo.
Heslo bolo skopírované po stlačení tlačidla sa zobrazí správa Kópia tlačidlo. Teraz je možné toto heslo použiť v iných aplikáciách na vytvorenie používateľského účtu.
Záver:
V tejto príručke sú vysvetlené dva rôzne spôsoby vytvárania náhodných hesiel. Prvý príklad je možné použiť, ak chcete vytvoriť textový generátor hesiel, a druhý príklad možno použiť, ak chcete vytvoriť generátor hesiel založený na grafickom používateľskom rozhraní.