Python3实战项目 - 制作自己的Python密码生成器

姓名:韩宜真

学号:17020120095

转载自:https://mp.weixin.qq.com/s/aHEavZMBKrZ9ZnlVlrwUOw

【嵌牛导读】本文介绍如何在Python中创建一个随机密码生成器。

【嵌牛鼻子】字符串

【嵌牛提问】如何创建随机密码生成器项目?

【嵌牛正文】

我们知道密码是真正的安全威胁。为了确保您的帐户安全并防止密码被黑客入侵,您必须将密码设置得足够强大,以至于没人能猜到。

密码生成器

它是一种工具,可根据您设置的给定准则生成密码,为您的帐户创建一个不可预知的强密码。

密码生成器工具会为用户创建一个随机的,自定义的密码,以帮助他们创建安全性更高的密码。

密码生成器Python项目

该项目的目的是使用python创建密码生成器。密码生成器项目将使用Tkinter,random,string,pyperclip等python模块构建。

在该项目中,用户必须选择密码长度,然后单击“生成密码 ”按钮。它将在下面显示生成的密码。如果用户单击“复制到剪贴板”按钮,它将自动复制密码。

项目先决条件

为了构建这个项目,我们将使用Python和库的基本概念– Tkinter,pyperclip,random,string。

Tkinter是标准的GUI库,并且是构建GUI应用程序的最简单方法之一。

pyperclip模块允许我们在剪贴板之间复制文本并将其粘贴到您的计算机

random模块可以生成随机数

string模块包含许多用于处理标准python字符串的函数。

要安装库,我们可以从命令行使用pip安装:

pip install tkinter

pip install pyperclip

pip install random

pip install strings

项目文件结构

让我们了解掌握下使用Python构建密码生成器的步骤

导入模块

初始化窗口

选择密码长度

定义功能

创建随机密码生成器的步骤

1、导入库

第一步是导入库

from tkinter import *

import random, string

import pyperclip

2、初始化窗口

root = Tk()

root.geometry("600x600")

root.resizable(0,0)

root.title("www.linuxmi.com - 密码生成器")

Tk() 初始化了tkinter,这意味着创建了窗口

geometry() 设置窗口的宽度和高度

resizable(0,0)设置窗口的固定大小

title()设置窗口的标题

Label(root, text = '密码生成器' , font ='arial 15 bold').pack()

Label(root, text ='Linux迷 www.linuxmi.com', font ='arial 15 bold').pack(side = BOTTOM)

Label()小部件用于显示用户无法修改的一行或多行文本。

root是我们在窗口中引用的名称

text 我们在标签上显示的是什么

font 文本的字体

pack 按块组织的小部件

3、选择密码长度

pass_label = Label(root, text = '密码长度', font = 'arial 10 bold').pack()

pass_len = IntVar()

length = Spinbox(root, from_ = 8, to_ = 32 , textvariable = pass_len , width = 15).pack()

pass_len是一个整数类型的变量,用于存储密码的长度。

要选择密码长度,我们使用Spinbox()小部件。

Spinbox() 小部件用于从固定数量的值中进行选择。这里的值从8到32

4、生成密码的函数

pass_str = StringVar()

def Generator():

password = ''

for x in range (0,4):

Password = random.choice(string.ascii_uppercase) + random.choice(string.ascii_lowercase) + random.choice(string.digits) + random.choice(string.punctuation)

for y in range(pass_len.get()- 4):

password = password + random.choice(string.ascii_uppercase + string.ascii_lowercase + string.digits + string.punctuation)

pass_str.set(password)

pass_str是一个字符串类型的变量,用于存储生成的密码

password= “”是空字符串

第一个循环将生成一个长度为4的字符串,该字符串是大写字母,小写字母,数字和特殊符号的组合,该字符串将存储在password变量中。

第二个循环将生成由用户输入的长度为4的随机字符串,并将其添加到password变量中。在这里,我们减去用户长度为4,因为我们已经生成了长度为4的字符串。

这样做是因为我们想要一个密码,该密码必须包含一个大写字母,一个小写字母,一个数字和一个特殊符号。

现在,将密码设置为pass_str() 变量。

Button(root, text = "生成密码" , command = Generator ).pack(pady= 5)

Entry(root , textvariable = pass_str).pack()

Button() 小部件,用于在我们的窗口上显示按钮

command 当单击按钮时调用

Entry() 用于创建输入文本字段的小部件

textvariable 用于将当前文本检索到输入小部件

5、复制密码的函数

def Copy_password():

pyperclip.copy(pass_str.get())

Button(root, text = '复制到剪贴板', command = Copy_password).pack(pady=5)

总结

通过这些步骤,我们已经成功地使用python创建了一个随机密码生成器项目。我们使用了流行的tkinter库在显示窗口中渲染图形,并且还了解了pyperclip和随机库。

我们学习了如何创建按钮,输入文本字段,标签和Spinbox。这样,我们成功创建了密码生成器python项目。希望你喜欢。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,907评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,987评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,298评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,586评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,633评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,488评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,275评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,176评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,619评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,819评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,932评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,655评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,265评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,871评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,994评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,095评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,884评论 2 354

推荐阅读更多精彩内容