Installer nødvendig modul:
Pyperclip-modulen brukes i denne opplæringen for å kopiere det tilfeldig genererte passordet for å bruke det et sted. Kjør følgende kommando for å installere pyperclip.
$ pip installer pyperclipEksempel 1: Implementere en enkel passordgenerator
Den enkle måten å opprette en passordgenerator på er vist i følgende skript. En stor tekst med blandede tegn er erklært for å generere passordet ved å velge de spesielle lengdetegnene. Lengden på passordet vil bli tatt fra brukeren. prøve() funksjon av tilfeldig modulen har blitt brukt til å velge tegnet fra teksten og slå sammen tilfeldig. Det tilfeldig genererte passordet blir skrevet ut senere.
# Importer tilfeldig modulimporter tilfeldig
# Sett tegnlisten for å generere passordet
tegn = "01234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ & * () [] | / \?[e-postbeskyttet] # $% ^ abcdefghijklmnopqrstuvwxyz "
# Ta lengden på passordet fra brukeren
password_length = int (input ('Skriv inn lengden på passordet:'))
# Generer passordet
passord = "".bli med (tilfeldig.eksempel (tegn, passordlengde))
# Skriv ut det genererte passordet
skriv ut ("Gernerert passord:% s"% passord)
Produksjon:
12 har gitt som verdien av passordlengden, og et passord på 12 tegn er generert etter at skriptet er utført.
Eksempel 2: Implementere Password Generator med GUI
GUI-basert passordgeneratorprogram er nyttig for brukeren å generere det tilfeldige passordet. Tkinter modulen har blitt importert til skriptet for å opprette et brukervennlig passordgeneratorprogram. Tilfeldig og streng moduler har blitt importert for å generere det tilfeldige passordet ved å blande store, små, siffer og spesialtegn. Pyperclip modulen brukes til å kopiere det genererte passordet for å opprette forskjellige typer brukerkontoer. Password_Generator () funksjonen har definert for å generere passordet og lagre det i passord variabel. CopyPassword () funksjonen har definert å kopiere det genererte passordet etter generering av passordet. Et Tkinter-objekt er erklært for å definere applikasjonsvinduet der de nødvendige widgetene for å designe passordgeneratorprogrammet vil bli lagt til. Den første etikettmodulen har definert innstilling av etiketten for rotasjonsboksen for å angi passordlengden. Den andre etikett-widgeten har definert tekstboksen-widget-etiketten der det genererte passordet vises. To-knappers widgets er definert for å generere passordet og kopiere passordet. Når 'Generer passord ' trykkes på knappen Password_Generator () funksjonen vil bli kalt, og det tilfeldig genererte passordet vises i tekstboksen. Etter å ha generert passordet, hvisKopiere' trykkes på, deretter CopyPassword () funksjon vil bli kalt for å kopiere passordet, og teksten 'Passordet er kopiertvises over knappene.
# Importer tkinter-modulimporter tkinter
# Importer tilfeldige moduler og strengmoduler
importer tilfeldig, streng
# Importer pyperclip-modul
importer pyperclip
# Definer funksjon for å generere tilfeldig passord
def Password_Generator ():
passord = "
for n innen rekkevidde (lenPassword.få()):
passord = passord + tilfeldig.valg (streng.ascii_uppercase + streng.ascii_lowercase + streng.sifre + streng.tegnsetting)
strPassword.lag et passord)
# Definer funksjon for å kopiere det genererte passordet
def CopyPassword ():
hvis strPassword.få() != ":
pyperclip.kopi (strPassword.få())
lblmsg2 = tkinter.Etikett (vinn, tekst = 'Passord kopiert', font = 'Ubuntu 12 fet', bredde = 15)
lblmsg2.sted (x = 105, y = 120)
ellers:
lblmsg2 = tkinter.Etikett (vinn, tekst = 'Ingenting å kopiere', font = 'Ubuntu 12 fet', bredde = 15)
lblmsg2.sted (x = 105, y = 120)
# Definer objekt for å vise hovedvinduet til applikasjonen
vinn = tkinter.Tk ()
# Sett tittelen på hovedvinduet
vinne.tittel ("Tilfeldig passordgenerator")
# Still inn høyden og bredden på hovedvinduet
vinne.geometri ("350x220")
# Still inn posisjonen til vinduet
vinne.eval ('tk :: PlaceWindow . senter')
# Sett etikett for passordlengden
lblPassword = tkinter.Etikett (win, text = 'Set Password Length', font = 'Ubuntu 15 bold')
lblPassword.pakke()
# Angi datatypen for passordlengden
lenPassword = tkinter.IntVar ()
# Sett grensen for lengdeverdien
lengde = tkinter.Spinbox (vinn, fra_ = 6, til_ = 16, tekstvariabel = lenPassword, bredde = 2)
lengde.pakke (pady = 10)
# Sett etiketten for passordfeltet
lblmsg1 = tkinter.Etikett (vinn, tekst = 'Generert passord', font = 'Ubuntu 12')
lblmsg1.pakke()
# Angi datatypen for passordfeltet
strPassword = tkinter.StringVar ()
# Definer variabelen for passordfeltet
textData = tkinter.Oppføring (vinn, tekstvariabel = strPassword, bredde = 15)
textData.pakke()
# Definer knapp for å ringe funksjonen for å generere det tilfeldige passordet
btnPassword = tkinter.Knapp (vinn, tekst = "Generer passord", kommando = Password_Generator)
btnPassword.pakke (padx = 50, pady = 5, side = tkinter.VENSTRE)
# Definer knapp for å ringe funksjonen for å kopiere passordet
btnCopy = tkinter.Knapp (vinn, tekst = 'Kopier', kommando = CopyPassword)
btnKopi.pakke (side = tkinter.VENSTRE)
# Ring hovedløkken til Tkinter for å åpne hovedvinduet
vinne.mainloop ()
Produksjon:
Følgende vindu vises etter at skriptet er utført. 6 er angitt som standard lengdeverdi for passordet. Brukeren kan øke eller redusere verdien før han genererer passordet.
Passordet på 8 tegn er generert etter å ha satt lengdeverdien til 8 og trykket på Generer passord knapp.
Passordet er kopiert meldingen har dukket opp etter å ha trykket på Kopiere knapp. Nå kan dette passordet brukes i andre applikasjoner for å opprette en brukerkonto.
Konklusjon:
To forskjellige måter å lage tilfeldige passord på er blitt forklart i denne veiledningen. Det første eksemplet kan brukes hvis du vil opprette en tekstbasert passordgenerator, og det andre eksemplet kan brukes hvis du vil opprette GUI-basert passordgenerator.