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


Posted in Python onNovember 05, 2019

具体代码如下所示:

#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实现图形密码生成器的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
linux系统使用python监控apache服务器进程脚本分享
Jan 15 Python
Python2中的raw_input() 与 input()
Jun 12 Python
Python数据类型详解(二)列表
May 08 Python
Python中动态检测编码chardet的使用教程
Jul 06 Python
Python cookbook(数据结构与算法)从序列中移除重复项且保持元素间顺序不变的方法
Mar 13 Python
python smtplib模块自动收发邮件功能(二)
May 22 Python
python处理DICOM并计算三维模型体积
Feb 26 Python
详解Python_shutil模块
Mar 15 Python
python3+PyQt5 实现Rich文本的行编辑方法
Jun 17 Python
PyQt QMainWindow的使用示例
Mar 24 Python
Python快速实现一键抠图功能的全过程
Jun 29 Python
Python中的嵌套循环详情
Mar 23 Python
python中删除某个元素的方法解析
Nov 05 #Python
Django 框架模型操作入门教程
Nov 05 #Python
Python3.7 读取 mp3 音频文件生成波形图效果
Nov 05 #Python
python被修饰的函数消失问题解决(基于wraps函数)
Nov 04 #Python
Python imread、newaxis用法详解
Nov 04 #Python
Python使用微信接入图灵机器人过程解析
Nov 04 #Python
python selenium循环登陆网站的实现
Nov 04 #Python
You might like
php实现模拟post请求用法实例
2015/07/11 PHP
PHP使用栈解决约瑟夫环问题算法示例
2017/08/27 PHP
PHP实现生成模糊图片的方法示例
2017/12/21 PHP
php日志函数error_log用法实例分析
2019/09/23 PHP
TP5框架实现自定义分页样式的方法示例
2020/04/05 PHP
js 函数调用模式小结
2011/12/26 Javascript
javascript对话框使用方法(警告框 javascript确认框 提示框)
2014/01/07 Javascript
实例说明为什么不要行内使用javascript
2014/04/18 Javascript
javascript 小数取整简单实现方式
2014/05/30 Javascript
javascript中的return和闭包函数浅析
2014/06/06 Javascript
AngularJS入门教程之AngularJS表达式
2016/04/18 Javascript
jQuery Validate让普通按钮触发表单验证的方法
2016/12/15 Javascript
自学实现angularjs依赖注入
2016/12/20 Javascript
javascript 正则表达式去空行方法
2017/01/24 Javascript
vue父组件向子组件动态传值的两种方法
2017/11/11 Javascript
ajax请求data遇到的问题分析
2018/01/18 Javascript
在vue项目中使用Nprogress.js进度条的方法
2018/01/31 Javascript
CSS3 动画卡顿性能优化的完美解决方案
2018/09/20 Javascript
详解Vue中数组和对象更改后视图不刷新的问题
2018/09/21 Javascript
详解ES6系列之私有变量的实现
2018/11/21 Javascript
vue路由传参页面刷新参数丢失问题解决方案
2019/10/08 Javascript
JS+DIV实现拖动效果
2020/02/11 Javascript
分享一款超好用的JavaScript 打包压缩工具
2020/04/26 Javascript
400多行Python代码实现了一个FTP服务器
2012/05/10 Python
使用python list 查找所有匹配元素的位置实例
2019/06/11 Python
Pycharm新建模板默认添加个人信息的实例
2019/07/15 Python
python kafka 多线程消费者&手动提交实例
2019/12/21 Python
python使用正则表达式(Regular Expression)方法超详细
2019/12/30 Python
Python matplotlib画曲线例题解析
2020/02/07 Python
雪山饭庄的创业计划书范文
2014/01/18 职场文书
预备党员表决心书
2014/03/11 职场文书
小学生开学第一课活动方案
2014/03/27 职场文书
运动会广播稿100字
2014/09/14 职场文书
2015年网络舆情工作总结
2015/07/24 职场文书
K8s部署发布Golang应用程序的实现方法
2021/07/16 Golang
利用uni-app生成微信小程序的踩坑记录
2022/04/05 Javascript