网络编程
位置:首页>> 网络编程>> Python编程>> 基于python2.7实现图形密码生成器的实例代码

基于python2.7实现图形密码生成器的实例代码

作者:liumt  发布时间:2021-01-21 15:20:50 

标签:python,生成器

具体代码如下所示:


#coding:utf8
import random,wx
def password(event):
 a = [chr(i) for i in range(97,123)]
 b = [chr(i) for i in range(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())
 if switch.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 , - + = @ $ % & ^
'''
import random
#定义密码生成函数
def pass_generator(n):
 lst1 = list(range(65,91))
 lst2 = list(range(97,123))
 lst3 = list(range(10))
 lst4 = ['+','-','=','@','#','$','%','^']
 s1 = ''.join(chr(c) for c in lst1)
 s2 = ''.join(chr(c) for c in lst2)
 s3 = ''.join(str(i) for i in lst3)
 s4 = ''.join( c for c in lst4)
 s = s1 + s2 + s3 + s4
 p = ''
 for _ in range(n):
   p += random.choice(s)
 return p
print(pass_generator(32))

总结

以上所述是小编给大家介绍的python2.7实现图形密码生成器的实例代码网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

来源:https://www.cnblogs.com/liumt-blog/p/11791904.html

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com