|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#密码安全性检查代码
#
#低级密码要求
#1.密码由单纯的数字或字母组成
#2.密码长度小于等于8位
#
#中级密码要求:
#1.密码必须由数字,字母或特殊字符(仅限:~!@%^&*()_=-/,.?<>;:[]{}/\)任何两种组合
#2.密码长度不能低于8位
#
#高级密码要求:
#1.密码必须由数字、字母及特殊字符(仅限:~!@%^&*()_=-/,.?<>;:[]{}/\)三种组合
#2.密码只能由字母开头
#3.密码长度不能低于16位
print("请输入需要检查的密码组合:",end="")
secret=input()
length=len(secret)
while True:
if secret.isdigit() or secret.isalpha() or length<=8:
print("您的密码评级为:低")
print("""#1.密码必须由数字、字母及特殊字符(仅限:~!@%^&*()_=-/,.?<>;:[]{}/\)三种组合
#2.密码只能由字母开头
#3.密码长度不能低于16位""")
break
if secret.isalnum() or length<16:
print("你的密码评级为:中")
print("""#1.密码必须由数字、字母及特殊字符(仅限:~!@%^&*()_=-/,.?<>;:[]{}/\\)三种组合
#2.密码只能由字母开头
#3.密码长度不能低于16位""")
break
secretson=[i for i in secret if not i in ["~","!","@","%","^","&","*","(",")","_","=","-","/",",",".","?","<",">",";",":","[","]","{","}","/","\\"]] #走到这里代表一定有字符
a=""
secretson1=a.join(secretson)
print(secretson1)
if secretson1.isdigit or secretson1.isalpha: ##############怀疑错误原因
print("你的密码评级为:中")
print("""#1.密码必须由数字、字母及特殊字符(仅限:~!@%^&*()_=-/,.?<>;:[]{}/\\)三种组合
#2.密码只能由字母开头
#3.密码长度不能低于16位""")
break
else:
print("你的密码评级为:高")
print("继续保持")
break
这是第十四课最后一题,错误原因可能是 if secretson1.isdigit or secretson1.isalpha:这一行,因为即使我输入aaaaaaaaaaaa111111!!!!!,它还是输出 print("你的密码评级为:中")
print("""#1.密码必须由数字、字母及特殊字符(仅限:~!@%^&*()_=-/,.?<>;:[]{}/\\)三种组合
#2.密码只能由字母开头
#3.密码长度不能低于16位""")
在线等,谢谢
本帖最后由 白two 于 2021-9-5 10:15 编辑
- secret = 'aaaaaaaaaaaa111111!!!!!'
- print(secret.isdigit)
复制代码
- <built-in method isdigit of str object at 0x00000246607E2E40>
复制代码
你看哈,不加括号就是内置方法,而 python 只要不是 0 或 False ,就按 True 来处理,说一你那样写就相当于恒为 True
|
|