Python实现密码生成器
环境准备
python3.6
pip install pyinstaller
pip install gooey
代码部分
# encoding:utf8
import random
import string
from gooey import GooeyParser,Gooey
@Gooey(encoding='utf8',program_name='强密码生成器',program_description='用于生成包含大小写字母、数字、特殊符号的强密码',optional_cols=1)
def stronge_password():
parse = GooeyParser(description='用于生成包含大小写字母、数字、特殊符号的强密码')
parse.add_argument('数量',widget='TextField')
parse.add_argument('长度',widget='TextField')
parse.add_argument('数字',widget='Dropdown',choices={"是":1,"否":0},default='是')
parse.add_argument('大写字母',widget='Dropdown',choices={"是":1,"否":0},default='否')
parse.add_argument('小写字母',widget='Dropdown',choices={"是":1,"否":0},default='否')
parse.add_argument('特殊符号',widget='Dropdown',choices={"是":1,"否":0},default='否')
parse.add_argument('去除词',widget='TextField',default='None')
args = parse.parse_args()
if args.数字 == "是":
digits = list(string.digits.strip())
else:
digits = []
if args.大写字母:
upper = list(string.ascii_uppercase)
else:
upper = []
if args.小写字母:
lower = list(string.ascii_lowercase)
else:
lower = []
if args.特殊符号:
symbol = list("~!@#$%^&*()_+{}[]/?")
else:
symbol = []
if args.去除词 != 'None':
stop_word = list(args.去除词.strip())
else:
stop_word = []
letter_list = digits + upper + lower + symbol
for item in stop_word:
if item in letter_list:
letter_list.remove(item)
for i in range(int(args.数量)):
result = ''.join([random.choice(letter_list) for i in range(int(args.长度))])
print(result)
if __name__ == '__main__':
stronge_password()
使用方法
下载地址密码生成器
输入密码长度和需要的数量,默认生成仅数字的密码,去除词(类似于O0的很难分辨的可以写到去除词文本框中)