# -*- coding: utf-8 -*-
"""
作者:宇轩亚40
功能:判断密码强弱
"""
def check_number_exist(password_str):
"""
判断字符串中是否含有数字
"""
has_number = False
for c in password_str:
if c.isnumeric():
has_number = True
break
return has_number
def check_letter_exist(password_str):
"""
判断字符串中是否含有字母
"""
has_letter = False
for c in password_str:
if c.isalpha():
has_letter = True
break
return has_letter
def main():
"""
主函数
"""
try_times = 5
while try_times > 0:
password = input('请输入密码:')
#密码强弱
strength_level = 0
#规则一:密码长度大于8
if len(password) >= 8:
strength_level += 1
else:
print('密码长度至少8位!')
#规则二:是否有数字
if check_number_exist(password):
strength_level += 1
else:
print('密码要求包含数字!')
#规则二:是否有字母
if check_letter_exist(password):
strength_level += 1
else:
print('密码要求包含字母!')
if strength_level == 3:
print('密码强度合格!')
break
else:
print('密码强度不合格!')
try_times -= 1
print()
if try_times <= 0:
print('尝试次数过多,密码设置失败!')
if __name__ == '__main__':
main()
运行上述程序,程序运行结果如下所示:
请输入密码:54r65t
密码长度至少8位!
密码强度不合格!
请输入密码:55351yrt
密码强度合格!
本文介绍了一个简单的密码强度检测算法,该算法通过检查密码长度、是否包含数字和字母来评估密码的强度。通过运行示例代码,可以测试不同密码的强度,并确保其符合基本的安全要求。
804

被折叠的 条评论
为什么被折叠?



