python字符串判断密码强弱


Posted in Python onMarch 18, 2020

本文实例为大家分享了Python密码强弱判断的具体代码,供大家参考,具体内容如下

程序说明:通过获取用户输入,判断密码长度是否大于8,同时判断其中是否包含数字和字母,并返回相关信息。

【相关知识点】

Python字符串:

str.isnumeric() -----检测字符串是否只有数字 返回True or False(注意是只有数字)
str.isalpha() -----检测字符串中是否只有字母 返回True or False
str.islower() -----检测字符串中是否都为小写
str.isupper() ------检测字符串中是否都为大写

"""
 作者: 王啸北
 日期: 2019.05.19
 功能: 判断输入密码的强弱
 版本: v2.0
 增加功能: 循环终止
"""

# 判断输入字符串中是否含有数字
def existNumber(password_str):
 has_number = False
 for c in password_str:
  if c.isnumeric():
   has_number = True
   break
 return has_number
 # 程序中一般不连续用两个return
 #   return True # return 提前终止循环
 # return False

# 判断输入字符串中是否含有字母
# def existAlpha(password_str):
#  for c in password_str:
#   if c.isalpha():
#    return True
#  return False

# v2.0 判断输入字符串中是否含有字母
def existAlpha(password_str):
 has_Alpha = False
 for c in password_str:
  if c.isalpha():
   has_Alpha = True
   break
 return has_Alpha

def main():
 """
 主函数
 :return:12
 """

 Try_times = 5
 while Try_times > 0:
  password = input('请输入密码:')
  # 密码强度
  strength_level = 0

  # 规则一: 密码长度大于8
  if len(password) >= 8:
   strength_level += 1
  else:
   print('请输入长度大于8的密码...')

  # 规则二: 判断是否有数字
  if existNumber(password):
   strength_level += 1
  else:
   print('密码中需包含数字')

  #规则三: 密码中包含字母
  if existAlpha(password):
   strength_level += 1
  else:
   print('密码中需包含字母')

  if strength_level == 3:
   print('密码输入正确!')
   break
  else:
   Try_times -= 1
   if Try_times == 0:
    print('密码错误次数太多!')
   else:
    print('密码错误!剩余{}次'.format(Try_times))
  print() #添加空行

if __name__ == '__main__':
 main()

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

Python 相关文章推荐
Python中的迭代器与生成器高级用法解析
Jun 28 Python
python使用matplotlib绘制折线图教程
Feb 08 Python
使用Python脚本和ADB命令实现卸载App
Feb 10 Python
利用python获取Ping结果示例代码
Jul 06 Python
python实现矩阵打印
Mar 02 Python
利用pandas将非数值数据转换成数值的方式
Dec 18 Python
tornado+celery的简单使用详解
Dec 21 Python
解决Python命令行下退格,删除,方向键乱码(亲测有效)
Jan 16 Python
python3检查字典传入函数键是否齐全的实例
Jun 05 Python
keras输出预测值和真实值方式
Jun 27 Python
python IP地址转整数
Nov 20 Python
Anaconda配置各版本Pytorch的实现
Aug 07 Python
详解Python3中的 input() 函数
Mar 18 #Python
Python通过socketserver处理多个链接
Mar 18 #Python
python实现密码强度校验
Mar 18 #Python
Python tcp传输代码实例解析
Mar 18 #Python
python实现用户名密码校验
Mar 18 #Python
Python3+selenium实现cookie免密登录的示例代码
Mar 18 #Python
Selenium启动Chrome时配置选项详解
Mar 18 #Python
You might like
生成php程序的php代码
2008/04/07 PHP
php之XML转数组函数的详解
2013/06/07 PHP
PHP FATAL ERROR: CALL TO UNDEFINED FUNCTION BCMUL()解决办法
2014/05/04 PHP
php实现断点续传大文件示例代码
2020/06/19 PHP
JavaScript 事件记录使用说明
2009/10/20 Javascript
JQuery自定义事件的应用 JQuery最佳实践
2010/08/01 Javascript
jQuery动态设置form表单的enctype值(实现代码)
2013/07/04 Javascript
JavaScript中Math对象方法使用概述
2014/01/02 Javascript
javascript操作表格排序实例分析
2015/05/06 Javascript
JS实现刷新父页面不弹出提示框的方法
2016/06/22 Javascript
最通俗易懂的javascript变量提升详解
2017/08/05 Javascript
Javascript(es2016) import和require用法和区别详解
2017/08/11 Javascript
实现图片首尾平滑轮播(JS原生方法—节流)
2017/10/17 Javascript
浅谈vue中使用图片懒加载vue-lazyload插件详细指南
2017/10/23 Javascript
React Native 通告消息竖向轮播组件的封装
2020/08/25 Javascript
微信小程序三级联动选择器使用方法
2020/05/19 Javascript
微信小程序上传图片功能(附后端代码)
2020/06/19 Javascript
angular6 利用 ngContentOutlet 实现组件位置交换(重排)
2018/11/02 Javascript
详解处理Vue单页面应用SEO的另一种思路
2018/11/09 Javascript
vue简单封装axios插件和接口的统一管理操作示例
2020/02/02 Javascript
40行代码把Vue3的响应式集成进React做状态管理
2020/05/20 Javascript
Vue包大小优化的实现(从1.72M到94K)
2021/02/18 Vue.js
整理Python中的赋值运算符
2015/05/13 Python
Python这样操作能存储100多万行的xlsx文件
2019/04/16 Python
Python try except异常捕获机制原理解析
2020/04/18 Python
HTML5实现WebSocket协议原理浅析
2014/07/07 HTML / CSS
白宫黑市官网:White House Black Market
2016/11/17 全球购物
英国高街电视:High Street TV
2018/05/22 全球购物
艺术家策划的室内设计:Curious Egg
2019/03/06 全球购物
大学四年学习的自我评价分享
2013/12/09 职场文书
音乐教学反思
2014/02/02 职场文书
考试作弊检讨书大全
2014/02/18 职场文书
党支部考察意见范文
2015/06/02 职场文书
高一英语教学反思
2016/03/03 职场文书
如何用Node.js编写内存效率高的应用程序
2021/04/30 Javascript
python flask框架快速入门
2021/05/14 Python