python如何随机生成高强度密码


Posted in Python onAugust 19, 2020

本文实例为大家分享了python随机生成高强度密码的具体代码,供大家参考,具体内容如下

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)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Pythont特殊语法filter,map,reduce,apply使用方法
Feb 27 Python
详解django中自定义标签和过滤器
Jul 03 Python
python将回车作为输入内容的实例
Jun 23 Python
python3 cvs将数据读取为字典的方法
Dec 22 Python
对Python+opencv将图片生成视频的实例详解
Jan 08 Python
python把1变成01的步骤总结
Feb 27 Python
Django 如何使用日期时间选择器规范用户的时间输入示例代码详解
May 22 Python
python3实现将json对象存入Redis以及数据的导入导出
Jul 16 Python
python实现批处理文件
Jul 28 Python
Python 爬虫性能相关总结
Aug 03 Python
python自动化测试三部曲之unittest框架的实现
Oct 07 Python
使用Python判断一个文件是否被占用的方法教程
Dec 16 Python
python实现图片转换成素描和漫画格式
Aug 19 #Python
python+django+selenium搭建简易自动化测试
Aug 19 #Python
python 中的命名空间,你真的了解吗?
Aug 19 #Python
13个Pandas实用技巧,助你提高开发效率
Aug 19 #Python
python环境搭建和pycharm的安装配置及汉化详细教程(零基础小白版)
Aug 19 #Python
Python实现自动签到脚本的示例代码
Aug 19 #Python
python3环境搭建过程(利用Anaconda+pycharm)完整版
Aug 19 #Python
You might like
山进SANGEAN ATS-909X电路分析
2021/03/02 无线电
浅谈php serialize()与unserialize()的用法
2013/06/05 PHP
PHP使用GIFEncoder类生成的GIF动态图片验证码
2014/07/01 PHP
laravel利用中间件防止未登录用户直接访问后台的方法
2019/09/30 PHP
javascript编程起步(第七课)
2007/02/27 Javascript
javascript中的107个基础知识收集整理 推荐
2010/03/29 Javascript
IE6/7/8/9不支持exec的简写方式
2011/05/25 Javascript
js中设置元素class的三种方法小结
2011/08/28 Javascript
浅谈Javascript鼠标和滚轮事件
2012/06/27 Javascript
JS中三目运算符和if else的区别分析与示例
2014/11/21 Javascript
JavaScript通过setTimeout实时显示当前时间的方法
2015/04/16 Javascript
Javascript 跨域知识详细介绍
2016/10/30 Javascript
Angularjs 实现移动端在线测评效果(推荐)
2017/04/05 Javascript
jquery基于layui实现二级联动下拉选择(省份城市选择)
2017/06/20 jQuery
浅谈jQuery框架Ajax常用选项
2017/07/08 jQuery
浅谈es6语法 (Proxy和Reflect的对比)
2017/10/24 Javascript
vue template中slot-scope/scope的使用方法
2018/09/06 Javascript
vue中如何实现后台管理系统的权限控制的方法步骤
2019/09/05 Javascript
[01:57]2018DOTA2亚洲邀请赛赛前采访-iG
2018/04/03 DOTA
[01:46]2018完美盛典章节片——坚守
2018/12/17 DOTA
基于Python log 的正确打开方式
2018/04/28 Python
从列表或字典创建Pandas的DataFrame对象的方法
2019/07/06 Python
python实现指定ip端口扫描方式
2019/12/17 Python
python实现梯度下降和逻辑回归
2020/03/24 Python
PHP基于phpqrcode类库生成二维码过程解析
2020/05/28 Python
python,Java,JavaScript实现indexOf
2020/09/09 Python
结合CSS3的布局新特征谈谈常见布局方法
2016/01/22 HTML / CSS
HTML5 在canvas中绘制矩形附效果图
2014/06/23 HTML / CSS
COACH德国官方网站:纽约现代奢侈品牌,1941年
2018/06/09 全球购物
美国运动鞋和服装网上商店:YCMC
2018/09/15 全球购物
结婚喜宴主持词
2014/03/14 职场文书
党员活动总结
2015/02/04 职场文书
病假证明模板
2015/06/19 职场文书
小学思想品德教学反思
2016/02/24 职场文书
分享:关于学习的励志名言赏析
2019/08/16 职场文书
Docker部署Mysql8的实现步骤
2022/07/07 Servers