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的Django框架完成视频处理任务的教程
Apr 02 Python
解决Python传递中文参数的问题
Aug 04 Python
浅谈Matplotlib简介和pyplot的简单使用——文本标注和箭头
Jan 09 Python
使用Python获取并处理IP的类型及格式方法
Nov 01 Python
Python实现定期检查源目录与备份目录的差异并进行备份功能示例
Feb 27 Python
django的csrf实现过程详解
Jul 26 Python
python 使用pygame工具包实现贪吃蛇游戏(多彩版)
Oct 30 Python
在Python中使用MongoEngine操作数据库教程实例
Dec 03 Python
Python图像处理库PIL的ImageFilter模块使用介绍
Feb 26 Python
解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题
Jun 23 Python
Python项目实战之使用Django框架实现支付宝付款功能
Feb 23 Python
实战Python爬虫爬取酷我音乐
Apr 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
从wamp到xampp的升级之路
2015/04/08 PHP
php 升级到 5.3+ 后出现的一些错误,如 ereg(); ereg_replace(); 函数报错
2015/12/07 PHP
PHP基于MySQLI函数封装的数据库连接工具类【定义与用法】
2017/08/11 PHP
xmlhttp缓存清除的2种解决方法
2013/12/13 Javascript
JQuery实现绚丽的横向下拉菜单
2013/12/19 Javascript
原生JS实现-星级评分系统的简单实例
2016/08/21 Javascript
利用Node.js制作爬取大众点评的爬虫
2016/09/22 Javascript
JavaScript实现三级联动效果
2017/07/15 Javascript
彻底搞懂JavaScript中的apply和call方法(必看)
2017/09/18 Javascript
JS设计模式之惰性模式(二)
2017/09/29 Javascript
Vuex 使用及简单实例(计数器)
2018/08/29 Javascript
详解JavaScript实现动态的轮播图效果
2019/04/29 Javascript
JS异步处理的进化史深入讲解
2019/08/25 Javascript
angular异步验证防抖踩坑实录
2019/12/01 Javascript
解决Vue 移动端点击出现300毫秒延迟的问题
2020/07/21 Javascript
详解vue中在父组件点击按钮触发子组件的事件
2020/11/13 Javascript
[04:29]2014DOTA2国际邀请赛 主赛事第三日TOPPLAY
2014/07/21 DOTA
Python模拟登录验证码(代码简单)
2016/02/06 Python
Python保存MongoDB上的文件到本地的方法
2016/03/16 Python
Django 使用logging打印日志的实例
2018/04/28 Python
python多进程(加入进程池)操作常见案例
2019/10/21 Python
python函数定义和调用过程详解
2020/02/09 Python
对tensorflow中cifar-10文档的Read操作详解
2020/02/10 Python
解决python调用自己文件函数/执行函数找不到包问题
2020/06/01 Python
HTML5+JS实现俄罗斯方块原理及具体步骤
2013/11/29 HTML / CSS
个人思想理论学习的自我鉴定
2013/11/30 职场文书
员工培训心得体会
2013/12/30 职场文书
思想品德自我评价
2014/02/04 职场文书
小学运动会入场式解说词
2014/02/18 职场文书
2014年商场工作总结
2014/11/22 职场文书
回复函范文
2015/07/14 职场文书
2015年大学迎新晚会总结
2015/07/16 职场文书
2016新教师岗前培训心得体会
2016/01/08 职场文书
XX部保密工作制度范本
2019/08/27 职场文书
python如何进行基准测试
2021/04/26 Python
世界无敌的ICOM IC-R9500宽频接收机
2022/03/25 无线电