基于python2.7实现图形密码生成器的实例代码
具体代码如下所示:
#coding:utf8
importrandom,wx
defpassword(event):
a=[chr(i)foriinrange(97,123)]
b=[chr(i)foriinrange(65,91)]
c=['0','1','2','3','4','5','6','7','8','9']
d=['!','@','#','$','%','^','&','*','(',')','=','_','+','/','?']
set1=a+b+c+d
set2=a+b+c
num=int(length.GetValue())
ifswitch.GetValue()==0:
passwd=''.join(random.sample(set1,num))
contents.SetValue(passwd)
else:
passwd=''.join(random.sample(set2,num))
contents.SetValue(passwd)
app=wx.App()
win=wx.Frame(None,-1,title=u'密码生成器',size=(480,200))
bkg=wx.Panel(win,-1)
#tt=wx.StaticText(bkg,-1,u'屏蔽输入字符')
#delete=wx.TextCtrl(bkg,-1)
right=wx.Button(bkg,-1,label=u'确定生成')
right.Bind(wx.EVT_BUTTON,password)
stxt=wx.StaticText(bkg,-1,u'请输入你的密码长度位数!')
length=wx.TextCtrl(bkg,-1,size=(50,27))
switch=wx.CheckBox(bkg,-1,u'关闭特殊字符',(150,20))
sobx=wx.BoxSizer()
sobx.Add(stxt,proportion=0,flag=wx.ALL,border=5)
sobx.Add(length,proportion=1,border=5)
sobx.Add(switch,proportion=0,flag=wx.ALL|wx.ALIGN_RIGHT,border=5)
sobx.Add(right,proportion=0,flag=wx.EXPAND,border=5)
contents=wx.TextCtrl(bkg,-1)
cobx=wx.BoxSizer()
cobx.Add(contents,proportion=1,flag=wx.EXPAND,border=5)
dobx=wx.BoxSizer()
#dobx.Add(delete,proportion=1,flag=wx.ALL,border=5)
robx=wx.BoxSizer(wx.VERTICAL)
robx.Add(cobx,proportion=1,flag=wx.EXPAND|wx.ALL,border=5)
robx.Add(sobx,proportion=0,flag=wx.ALL,border=5)
#robx.Add(dobx,proportion=0,flag=wx.EXPAND,border=5)
bkg.SetSizer(robx)
win.Show()
app.MainLoop()
ps:下面看下python密码生成器
''' 随机密码生成器 该生成器用于生成6位随机密码,包含A-Z,a-z,0-9,-+=@$%&^ ''' importrandom #定义密码生成函数 defpass_generator(n): lst1=list(range(65,91)) lst2=list(range(97,123)) lst3=list(range(10)) lst4=['+','-','=','@','#','$','%','^'] s1=''.join(chr(c)forcinlst1) s2=''.join(chr(c)forcinlst2) s3=''.join(str(i)foriinlst3) s4=''.join(cforcinlst4) s=s1+s2+s3+s4 p='' for_inrange(n): p+=random.choice(s) returnp print(pass_generator(32))
总结
以上所述是小编给大家介绍的python2.7实现图形密码生成器的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。