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 相关文章推荐
使用IPython下的Net-SNMP来管理类UNIX系统的教程
Apr 15 Python
实例解析Python的Twisted框架中Deferred对象的用法
May 25 Python
python定向爬虫校园论坛帖子信息
Jul 23 Python
numpy给array增加维度np.newaxis的实例
Nov 01 Python
python处理“
Jun 10 Python
tensorflow求导和梯度计算实例
Jan 23 Python
基于Python3读写INI配置文件过程解析
Jul 23 Python
Python实现数字的格式化输出
Aug 01 Python
基于python实现简单网页服务器代码实例
Sep 14 Python
python 实现波浪滤镜特效
Dec 02 Python
基于Python的接口自动化读写excel文件的方法
Jan 15 Python
Python获取江苏疫情实时数据及爬虫分析
Aug 02 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
《星际争霸》各版本雷兽特点图文解析 雷兽不同形态一览
2020/03/02 星际争霸
mysql4.1以上版本连接时出现Client does not support authentication protocol问题解决办法
2007/03/15 PHP
php实现向javascript传递数组的方法
2015/07/27 PHP
Linux系统下PHP-FPM的安装和配置教程
2015/08/17 PHP
Yii2实现ActiveForm ajax提交
2017/05/26 PHP
Laravel5.* 打印出执行的sql语句的方法
2017/07/24 PHP
Yii2.0实现生成二维码功能实例
2017/10/24 PHP
jquery 锁定弹出层实现代码
2010/02/23 Javascript
js游戏人物上下左右跑步效果代码分享
2015/08/28 Javascript
jQuery实时显示鼠标指针位置和键盘ASCII码
2016/03/28 Javascript
jQuery Mobile 和 Kendo UI 的比较
2016/05/05 Javascript
如何利用模板将HTML从JavaScript中抽离
2016/10/08 Javascript
js实现密码强度检验
2017/01/15 Javascript
jquery Easyui Datagrid实现批量操作(编辑,删除,添加)
2017/02/20 Javascript
js 倒计时(高效率服务器时间同步)
2017/09/12 Javascript
0基础学习前端开发的一些建议
2020/07/14 Javascript
[06:11]2014DOTA2国际邀请赛 专访团结一心的VG战队
2014/07/21 DOTA
python 随机数生成的代码的详细分析
2011/05/15 Python
进一步了解Python中的XML 工具
2015/04/13 Python
python实现用户登陆邮件通知的方法
2015/07/09 Python
使用相同的Apache实例来运行Django和Media文件
2015/07/22 Python
python2.7到3.x迁移指南
2018/02/01 Python
Python调用adb命令实现对多台设备同时进行reboot的方法
2018/10/15 Python
python实现在函数中修改变量值的方法
2019/07/16 Python
python识别文字(基于tesseract)代码实例
2019/08/24 Python
python中的itertools的使用详解
2020/01/13 Python
Python cookie的保存与读取、SSL讲解
2020/02/17 Python
Python BeautifulReport可视化报告代码实例
2020/04/13 Python
python实现音乐播放和下载小程序功能
2020/04/26 Python
Keras中的两种模型:Sequential和Model用法
2020/06/27 Python
pycharm导入源码的具体步骤
2020/08/04 Python
企划经理的岗位职责
2013/11/17 职场文书
大学生自助营养快餐店创业计划书
2014/01/13 职场文书
2014年工程工作总结
2014/11/25 职场文书
公司员工体检通知
2015/04/21 职场文书
盗窃案辩护词
2015/05/21 职场文书