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程序设计入门(5)类的使用简介
Jun 16 Python
python处理文本文件实现生成指定格式文件的方法
Jul 31 Python
详解Django缓存处理中Vary头部的使用
Jul 24 Python
详解python的数字类型变量与其方法
Nov 20 Python
使用python在本地电脑上快速处理数据
Jun 22 Python
R vs. Python 数据分析中谁与争锋?
Oct 18 Python
python实现Zabbix-API监控
Sep 17 Python
python utc datetime转换为时间戳的方法
Jan 15 Python
详解pandas使用drop_duplicates去除DataFrame重复项参数
Aug 01 Python
python用WxPython库实现无边框窗体和透明窗体实现方法详解
Feb 21 Python
OpenCV Python实现图像指定区域裁剪
Mar 12 Python
python实现图像高斯金字塔的示例代码
Dec 11 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
桌面中心(三)修改数据库
2006/10/09 PHP
新浪SAE搭建PHP项目教程
2015/01/28 PHP
PHP接口类(interface)的定义、特点和应用示例
2020/05/18 PHP
javascript 继承实现方法
2009/08/26 Javascript
基于jquery的当鼠标滚轮到最底端继续加载新数据思路分享(多用于微博、空间、论坛 )
2011/10/10 Javascript
javascript将数组插入到另一个数组中的代码
2013/01/10 Javascript
javascript图像处理—仿射变换深度理解
2013/01/16 Javascript
jQuery构造函数init参数分析
2015/05/13 Javascript
JS+CSS实现仿触屏手机拨号盘界面及功能模拟完整实例
2015/05/16 Javascript
Javascript使用function创建类的两种方法(推荐)
2016/11/19 Javascript
JS插件plupload.js实现多图上传并显示进度条
2016/11/29 Javascript
微信小程序图片选择、上传到服务器、预览(PHP)实现实例
2017/05/11 Javascript
Vue-cli中为单独页面设置背景色的实现方法
2018/02/11 Javascript
30分钟快速实现小程序语音识别功能
2018/11/27 Javascript
JavaScript直接调用函数与call调用的区别实例分析
2020/05/22 Javascript
vue-路由精讲 二级路由和三级路由的作用
2020/08/06 Javascript
详解node.js创建一个web服务器(Server)的详细步骤
2021/01/15 Javascript
python获取指定字符串中重复模式最高的字符串方法
2018/06/29 Python
使用numba对Python运算加速的方法
2018/10/15 Python
python爬虫之遍历单个域名
2019/11/20 Python
解决TensorFlow程序无限制占用GPU的方法
2020/06/30 Python
深入了解Python 变量作用域
2020/07/24 Python
python多线程爬取西刺代理的示例代码
2021/01/30 Python
全球度假村:Club Med
2017/11/27 全球购物
美国购买当代和现代家具网站:MODTEMPO
2018/07/20 全球购物
main 函数执行以前,还会执行什么代码
2013/04/17 面试题
存储过程的优点有哪些
2012/09/27 面试题
什么是TCP/IP
2014/07/27 面试题
《狮子和兔子》教学反思
2014/03/02 职场文书
历史学专业求职信
2014/06/19 职场文书
2014大学生批评与自我批评思想汇报
2014/09/21 职场文书
2014年学校食堂工作总结
2014/11/25 职场文书
2015年教师节演讲稿范文
2015/03/19 职场文书
刮痧观后感
2015/06/05 职场文书
使用springboot暴露oracle数据接口的问题
2021/05/07 Oracle
微软Win11什么功能最惊艳? Windows11新功能特性汇总
2021/11/21 数码科技