时间:2020-11-28 14:10:45 | 栏目:Python代码 | 点击:次
本文实例为大家分享了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()