Python实现密码生成器

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的很难分辨的可以写到去除词文本框中)

posted @ 2020-11-05 20:08  Jruing  阅读(1438)  评论(0编辑  收藏  举报