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 相关文章推荐
Python实现读取目录所有文件的文件名并保存到txt文件代码
Nov 22 Python
Python的装饰器用法学习笔记
Jun 24 Python
Python切片工具pillow用法示例
Mar 30 Python
解决Python的str强转int时遇到的问题
Apr 09 Python
Python中数组,列表:冒号的灵活用法介绍(np数组,列表倒序)
Apr 18 Python
windows下python安装小白入门教程
Sep 18 Python
python 格式化输出百分号的方法
Jan 20 Python
ActiveMQ:使用Python访问ActiveMQ的方法
Jan 30 Python
Python求离散序列导数的示例
Jul 10 Python
QML使用Python的函数过程解析
Sep 26 Python
numpy.ndarray 实现对特定行或列取值
Dec 05 Python
django如何自定义manage.py管理命令
Apr 27 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
php将金额数字转化为中文大写
2015/07/09 PHP
php数组分页实现方法
2016/04/30 PHP
通过修改Laravel Auth使用salt和password进行认证用户详解
2017/08/17 PHP
解决Laravel5.5下的toArray问题
2019/10/15 PHP
070823更新的一个[消息提示框]组件 兼容ie7
2007/08/29 Javascript
JavaScript Event学习第四章 传统的事件注册模型
2010/02/07 Javascript
jQuery的写法不同导致的兼容性问题的解决方法
2010/07/29 Javascript
模拟jQuery ajax服务器端与客户端通信的代码
2011/03/28 Javascript
关于div自适应高度/左右高度自适应一致的js代码
2013/03/22 Javascript
求数组最大最小值方法适用于任何数组
2013/08/16 Javascript
jquery $.fn $.fx是什么意思有什么用
2013/11/04 Javascript
利用jQuery实现可以编辑的表格
2014/05/26 Javascript
JavaScript常用脚本汇总(一)
2015/03/04 Javascript
JavaScript实现添加、查找、删除元素
2015/07/02 Javascript
vue 怎么创建组件及组件使用方法
2017/07/27 Javascript
看看“疫苗查询”小程序有温度的代码
2018/07/31 Javascript
vue webpack开发访问后台接口全局配置的方法
2018/09/18 Javascript
vue watch关于对象内的属性监听
2019/04/22 Javascript
JavaScript Event Loop相关原理解析
2020/06/10 Javascript
vue+node 实现视频在线播放的实例代码
2020/10/19 Javascript
Python使用函数默认值实现函数静态变量的方法
2014/08/18 Python
Python 基础教程之闭包的使用方法
2017/09/29 Python
python使用xpath中遇到:到底是什么?
2018/01/04 Python
深入浅析Python中的yield关键字
2018/01/24 Python
django启动uwsgi报错的解决方法
2018/04/08 Python
用Python PIL实现几个简单的图片特效
2019/01/18 Python
解决 jupyter notebook 回车换两行问题
2020/04/15 Python
python实现飞船大战
2020/04/24 Python
Matplotlib中rcParams使用方法
2021/01/05 Python
使用CSS3的appearance属性改变元素的外观的方法
2015/12/12 HTML / CSS
哥伦比亚最大的网上商店:Linio哥伦比亚
2016/09/25 全球购物
UNIX文件系统分类
2014/11/11 面试题
银行员工职业规划范文
2014/01/21 职场文书
软件部经理岗位职责范本
2014/02/25 职场文书
2014公司党员自我评价范文
2014/09/11 职场文书
答谢词范文
2015/01/05 职场文书