这篇文章主要介绍了python随机生成高强度密码的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。
创新互联长期为超过千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为金门企业提供专业的网站设计、成都做网站,金门网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。具体内容如下
import random import re # 字母类型 englishChar = ['q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', 'l', 'k', 'j', 'h', 'g', 'f', 'd', 's', 'a', 'z', 'x', 'c', 'v', 'b', 'n', 'm'] # 数字类型 numberChar = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '0'] # 符号类型 symbolChar = ['!', '@', '#', '$', '%', '^', '&', '*'] # 生成的密码 password = '' # 用户选择的密码类型 allChar = [] # 选择密码类型 print('1、字母') print('2、字母+数字') print('3、字母+数字+符号') typePassword = input('输入你的密码类型选择(数字):') # 判断输入是否合法 if not re.fullmatch('[1-3]', typePassword): print("\033[37;41m 不要跟我皮\033[0m") exit(0) # 初始化密码类型 if typePassword.__eq__('1'): allChar = englishChar.copy() if typePassword.__eq__('2'): allChar = englishChar.copy() + numberChar.copy() if typePassword.__eq__('3'): allChar = englishChar.copy() + numberChar.copy() + symbolChar.copy() # 重新洗牌数组 random.shuffle(allChar) # 配置基本信息 account = input('你为哪个账号设置密码?:') accountID = input('输入账户ID:') passwordLength = input('密码长度是多少(25>p>7):') # 检测用户输入是否合法 if not passwordLength.isdigit() and 25 > int(passwordLength) > 7: print("\033[37;41m 不要跟我皮\033[0m") exit(0) # 循环生成密码 for i in range(int(passwordLength)): a = len(allChar) - 1 password = password + allChar[random.randint(0, a)] # 密码文件备份 with open('/Users/apple/专业知识/密码/' + account, 'w', encoding='utf8') as file: file.writelines("账户ID:" + accountID + '\n') file.writelines('密码:' + password) file.close() # 展示密码 print('生成的密码为:' + password)