用于检查给定密码是否符合条件的程序
假设我们有一个代表密码的字符串s,我们必须检查密码标准。有几条规则,我们必须遵循-
密码长度至少为8个字符,最大为20个字符。
密码至少包含一位数字
密码至少包含一个小写字符和一个大写字符
密码至少包含一个特殊字符,如!“#$%&\'()* +,-。/ :; <=>?@ [\\] ^ _`{|}〜
密码不包含其他任何字符,例如制表符或换行符。
因此,如果输入类似于“ @ bCd12#4”,则输出将为True。
为了解决这个问题,我们将遵循以下步骤-
a:= 0,b:= 0,c:= 0,d:= 0
如果密码的大小<8或密码的大小> 20,则
返回False
对于密码中的每个字符,请执行
d:= d + 1
c:= c + 1
b:= b + 1
a:= a + 1
如果我是大写字母,那么
否则,当我是小写字母时
否则,当我在这组特殊字符'“!”#^ modAND \'()* +,-./:;<=>?@[\\]XOR_`{OR}~“”中时,则
否则,当我是数字时,则
如果a> = 1和b> = 1且c> = 1和d> = 1且a + b + c + d与密码的大小相同,则
返回True
除此以外,
返回False
让我们看下面的实现以更好地理解-
示例
class Solution:def solve(self, password):
a=0
b=0
c=0
d=0
if len(password)<8 or len(password)>20:
return False
for i in password:
if i.isupper():
a+=1
elif i.islower():
b+=1
elif i in '"!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~"':
c+=1
elif i.isdigit():
d+=1
if a>=1 and b>=1 and c>=1 and d>=1 and
a+b+c+d==len(password):
return True
else:
return False
s = "@bCd12#4"
ob = Solution()print(ob.solve(s))
输入项
"@bCd12#4"
输出结果
True
以上是 用于检查给定密码是否符合条件的程序 的全部内容, 来源链接: utcz.com/z/331290.html