编写程序,输入一个字符串,输出该字符串作为密码时得安全强度。
import string
password=input("请输入密码")
p=list(password)
x=0
for i in p:
if i ==" ":
x=1
if x==1:
print("密码格式不对")
elif password.isdigit()==True or password.isalpha()==True:
print("密码强度弱")
elif password.isalnum()==True:
print("密码强度中")
else:
print("密码强度强")
def check(pw):
if not isinstance(pw,str) or len(pw)<8:
return '密码格式不对'
d={'1':'weak','2':'小写字母','3':'大写字母','4':'标点符号'}
r=[False]*4
for ch in pw:
if not r[0] and ch in string.digits:
r[0]=True
elif not r[1] and ch in string.ascii_lowercase:
r[1]=True
elif not r[2] and ch in string.ascii_uppercase:
r[2]=True
elif not r[3] and ch in ',.!;?,<>':
r[3]=True
return d.get(r.count(True),'error')