python 随机生成密码 打包成exe文件

日常工作中经常需要用到比较复杂的密码,字母大小写+数字+特殊符号,一个两个还能自己手敲,数量大的时候,想密码都会很痛苦吧,这种内容就让代码来帮你想吧,可以让你指定密码长度.

先来编写生成随机数的代码,先创建一个Random_password.py文件,导入random模块和string模块

import random
import string
punctuation1 = '!@#$%^&*+~'		
'''这里是因为我用不了那么多的特殊符号,所以我自定义了一个特殊符号变量'''

for i in range(3): # 循环几次,生成几组密码
    num = random.randint(10, 30)    # 指定密码长度(10位到30位)
    value = ''.join(random.sample(string.digits + string.letters + punctuation1, num))
    print value

这里’'punctuation1 ''这里是因为我用不了那么多的特殊符号,所以我自定义了一个特殊符号变量,在string里面有已经定义好了的特殊符号,可以直接调用,把value中的punctuation1换成string.punctuation就可以了
在这里插入图片描述
直接运行代码
在这里插入图片描述

随机密码已经出来了,现在我们将它生成界面化,这里需要导入一个Tkinter模块(python2中是’Tkinter’,python3中是’tkinter’要注意区分)

# -*- coding:UTF-8 -*-

from Tkinter import *
import random
import string
punctuation1 = '!@#$%^&*+~'

root = Tk()
def PWD():
    B = int(Length.get())
    for i in range(B):  # 从输入框中获取生成的密码数量
        num = random.randint(10, 30)    # 指定密码长度
        value = ''.join(random.sample(string.digits + string.letters + punctuation1, num))
        print value

Label(root, text="生成密码个数:").place(relx=0, rely=0.1, relwidth=0.3, relheight=0.2)
Length = Entry(root)
Length.place(relx=0.3, rely=0.1, relwidth=0.3, relheight=0.2)

Button(root, text="生成密码", width=10, command=PWD).place(relx=0.65, rely=0.1, relwidth=0.3, relheight=0.2)
root.title('密码生成器')
root.geometry('400x200')
mainloop()

运行后会出现一个tk窗口
在这里插入图片描述
在输入框中输入数字,点击生成密码,会在控制台中打印出生成的密码
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210401172337679.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaWppYW5ncA==,size_16,color_FFFFFF,t_70
然后我们将生成的密码输出到文本中,便于保存

# -*- coding:UTF-8 -*-

from Tkinter import *
import random
import string
punctuation1 = '!@#$%^&*+~'

root = Tk()
def PWD():
    B = int(Length.get())
    for i in range(B):  # 从输入框中获取生成的密码数量
        num = random.randint(10, 30)    # 指定密码长度
        value = ''.join(random.sample(string.digits + string.letters + punctuation1, num))
        r = open("password.txt", "a",)  # 将随机密码输出到文档中
        r.write(value + '\n')
        r.close()

Label(root, text="生成密码个数:").place(relx=0, rely=0.1, relwidth=0.3, relheight=0.2)
Length = Entry(root)
Length.place(relx=0.3, rely=0.1, relwidth=0.3, relheight=0.2)

Button(root, text="生成密码", width=10, command=PWD).place(relx=0.65, rely=0.1, relwidth=0.3, relheight=0.2)
root.title('密码生成器')
root.geometry('400x200')
mainloop()

现在用py2exe模块打包成一个exe文件
首先需要写一个setpu.py脚本

from distutils.core import setup
import py2exe
setup(windows =["Random_password.py"])

进入到setpu.py文件目录中打开DOS窗口运行 python setup.py py2exe
在这里插入图片描述

将产生一个名为 dist 的子目录,其中包含了 helloworld.exe、python24.dll、library.zip 等等文件

在这里插入图片描述
点击运行这个文件,就可以在Windows系统上运行代码

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值