少了一个break,帮你改好了:while 1:
num = '0123456789'
alpha = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
extra = r'''~!@#$%^&*()_=-/,.?<>;:[]{}\|'''
passwd = input('请输入需要检查的密码组合:')
length = len(passwd)
while (length == 0 or passwd.isspace()):
passwd = input('输入密码为空,请重新输入:')
length = len(passwd)
if length <= 8:
flag_len = 1
elif length >= 16:
flag_len = 3
else:
flag_len = 2
flag_con = 0
for each in passwd:
if each in num:
flag_con += 1
break
for each in passwd:
if each in alpha:
flag_con += 1
break
for each in passwd:
if each in extra:
flag_con += 1
break
while 1:
print('您的密码安全级别评定为:',end='')
if flag_len == 1 or flag_con == 1:
print('低')
elif flag_len == 3 and flag_con == 3 and (passwd[0] in alpha):
print('高')
print('请继续保持')
break
else:
print('中')
print('"请按以下方式提升您的密码安全级别:\n\
\t1.密码必须由数字、字母及特殊字符三种组合\n\
\t2.密码只能由字母开头\n\
\t3.密码长度不低于16位')
break
break
|