求求各位大佬解决一下我的简单问题吧
为什么不能出现密码等级为:高的情况呢??是哪里出问题了吗??charts = r'''`!@#$%^&*()_+-=/*{}[]\|'";:/?,.<>'''
number = '0123456789'
word = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
passwd = input('请输入需要检查的密码组合:')
length = len(passwd)
if length <=8:
need = 1
elif 8 < length < 16:
need = 2
else:
need = 3
count = 0
for each in passwd:
if each in charts:
count += 1
break
for each in passwd:
if each in number:
count += 1
break
for each in passwd:
if each in word:
count += 1
break
if count == 1 and need ==1:
print('您的密码安全级别评定为:低')
print("请按以下方式提升您的密码安全级别:\n\
\t1. 密码必须由数字、字母及特殊字符三种组合\n\
\t2. 密码只能由字母开头\n\
\t3. 密码长度不能低于16位")
elif count == 3 and need == 3 and (passwd in charts):
print('您的密码安全级别评定为:gao')
print('请继续保持')
else:
print('您的密码安全级别评定为:zhong')
print("请按以下方式提升您的密码安全级别:\n\
\t1. 密码必须由数字、字母及特殊字符三种组合\n\
\t2. 密码只能由字母开头\n\
\t3. 密码长度不能低于16位") 可以出现密码等级为高啊
输入的密码符合那三个条件,结果就为高啊
你再看看你的程序中密码被评为gao的条件,你是不是输入的密码第一位不是特殊字符啊? 你应该是搞错了,你的想法是让密码的第一个字符是字母,可实际上的要求是密码的第一个字符是特殊符号。第41行,错了
页:
[1]