下面的代码输入相同,但结果不同,帮忙看看,是什么情况
b = r'''`!@#$%^&*()_+-=/*{}[]\|'";:/?,.<>'''
c = '0123456789'
d = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
e = 0
f = 0
g = 0
while True:
possword = input("请输入需要检查的密码组合(输入'q'退出):")
a = len(possword)
if possword == 'q':
break
elif a == 0 or possword.isspace():
possword = input("您输入的密码为空(或空格),请重新输入:")
elif possword.isalpha() or possword.isdigit() or a < 8:
print('您的密码安全级别评定为:低')
elif a < 16:
print('您的密码安全级别评定为:中')
else:
for i in possword:
if i in b:
e += 1
elif i in c:
f += 1
elif i in d:
g += 1
if e * f * g != 0:
print('您的密码安全级别评定为:高')
print("请继续保持")
continue
else:
print('您的密码安全级别评定为:中')
print("请按以下方式提升您的密码安全级别:\n\
\t1. 密码必须由数字、字母及特殊字符三种组合\n\
\t2. 密码只能由字母开头\n\
\t3. 密码长度不能低于16位")
b = r'''`!@#$%^&*()_+-=/*{}[]\|'";:/?,.<>'''
c = '0123456789'
d = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
e = 0
f = 0
g = 0
while True:
possword = input("请输入需要检查的密码组合(输入'q'退出):")
a = len(possword)
if possword == 'q':
break
elif a == 0 or possword.isspace():
possword = input("您输入的密码为空(或空格),请重新输入:")
elif possword.isalpha() or possword.isdigit() or a < 8:
print('您的密码安全级别评定为:低')
elif a < 16:
print('您的密码安全级别评定为:中')
else:
e = 0;f = 0;g=0
for i in possword:
if i in b:
e += 1
elif i in c:
f += 1
elif i in d:
g += 1
if e * f * g != 0:
print('您的密码安全级别评定为:高')
print("请继续保持")
continue
else:
print('您的密码安全级别评定为:中')
print("请按以下方式提升您的密码安全级别:\n\
\t1. 密码必须由数字、字母及特殊字符三种组合\n\
\t2. 密码只能由字母开头\n\
\t3. 密码长度不能低于16位")
每次判断是否属于高安全性时,需要将3个变量初始化 谢谢
页:
[1]