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 当前全局变量和入口参数的所有属性
Jul 01 Python
python函数局部变量用法实例分析
Aug 04 Python
python使用arcpy.mapping模块批量出图
Mar 06 Python
详解Python中for循环是如何工作的
Jun 30 Python
python skimage 连通性区域检测方法
Jun 21 Python
python numpy 显示图像阵列的实例
Jul 02 Python
Python3数据库操作包pymysql的操作方法
Jul 16 Python
Python实现将Excel转换成xml的方法示例
Aug 25 Python
Python饼状图的绘制实例
Jan 15 Python
几行Python代码爬取3000+上市公司的信息
Jan 24 Python
使用python matploblib库绘制准确率,损失率折线图
Jun 16 Python
python中 .npy文件的读写操作实例
Apr 14 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
Windows下部署Apache+PHP+MySQL运行环境实战
2012/08/31 PHP
检查用户名是否已在mysql中存在的php写法
2014/01/20 PHP
Yii框架在页面输出执行sql语句以方便调试的实现方法
2014/12/24 PHP
[原创]php逐行读取txt文件写入数组的方法
2015/07/02 PHP
Laravel框架实现利用中间件进行操作日志记录功能
2018/06/06 PHP
Yii框架数据库查询、增加、删除操作示例
2019/10/14 PHP
PHP如何防止用户重复提交表单
2020/12/09 PHP
JavaScript 错误处理与调试经验总结
2010/08/10 Javascript
js数组与字符串的相互转换方法
2014/07/09 Javascript
javascript学习笔记(六)数据类型和JSON格式
2014/10/08 Javascript
推荐10 个很棒的 jQuery 特效代码
2015/10/04 Javascript
JavaScript中的各种操作符使用总结
2016/05/26 Javascript
jquery 正整数数字校验正则表达式
2017/01/10 Javascript
JS中Swiper的使用和轮播图效果
2017/08/11 Javascript
js实现QQ面板拖拽效果(慕课网DOM事件探秘)(全)
2017/09/19 Javascript
微信小程序使用Socket的实例
2017/09/19 Javascript
Vue组件教程之Toast(Vue.extend 方式)详解
2019/01/27 Javascript
JavaScript 浏览器对象模型BOM原理与常见用法实例分析
2019/12/16 Javascript
原生JS实现天气预报
2020/06/16 Javascript
js里面的变量范围分享
2020/07/18 Javascript
three.js中多线程的使用及性能测试详解
2021/01/07 Javascript
python3实现名片管理系统
2020/11/29 Python
python实现把二维列表变为一维列表的方法分析
2019/10/08 Python
Pycharm及python安装详细步骤及PyCharm配置整理(推荐)
2020/07/31 Python
python如何保存文本文件
2020/06/07 Python
Python xpath表达式如何实现数据处理
2020/06/13 Python
PyCharm Ctrl+Shift+F 失灵的简单有效解决操作
2021/01/15 Python
html5 Canvas画图教程(7)—canvas里画曲线之quadraticCurveTo方法
2013/01/09 HTML / CSS
自荐信要包含哪些内容
2013/11/06 职场文书
学习雷锋精神演讲稿
2014/05/10 职场文书
红领巾心向党演讲稿
2014/09/10 职场文书
品质保证书格式
2015/02/28 职场文书
2015年网络舆情工作总结
2015/07/24 职场文书
2015年小学师德师风建设工作总结
2015/10/23 职场文书
创业计划书之蛋糕店
2019/08/29 职场文书
CSS实现单选折叠菜单功能
2021/11/01 HTML / CSS