密码通常是由大写字母、小写字母、数字和符号构成的,现需要实现检查并判断密码字符串的安全等级的功能,密码的安全等级和字符串中包含的字符种类成这个相关。
(1)合法密码必须以字母开头,并且长度不小于6.
(2)密码字符串只包含一种字符,则密码等级为弱;
(3)密码字符串只包含两种字符,则密码等级为中;
(4)密码字符串只包含三种字符,则密码等级为较强;
(5)密码字符串只包含四种字符,则密码等级为强;
数据输入:
输入一个字符串(长度在1-100之间)不包含空格
数据输出:
输入示例:123 输出示例:不是合法的密码
输入示例:abC123 输出示例:较强
import string
input_code = input("请输入待检测字符串:")
a = 0
b = 0
c = 0
d = 0
if ('a' <= input_code[0] <= 'z' or 'A' <= input_code[0] <= 'Z') and len(input_code) >= 6:
for i in input_code:
if i.isdecimal():#检查字符串是否只包含十进制字符,这种方法只存在于unicode对象哈
a = 1
if i.isupper():
b = 1
if i.islower():
c = 1
if i in string.punctuation:#所有的标点字符
d = 1
if a + b + c + d == 1:
print("弱")
elif a + b + c + d == 2:
print("中")
elif a + b + c + d == 3:
print("较强")
elif a + b + c + d == 4:
print("强")
else:
print("不是合法的密码(请以字母开头,并且长度不小于6)")