题解 | #密码强度等级#

密码强度等级

https://www.nowcoder.com/practice/52d382c2a7164767bca2064c1c9d5361

        # 密码长度
        score = 0
        s = input()
        if len(s) <= 4:
            score = 5
        elif len(s) >= 8:
            score = 25
        else:
            score = 10
        # 密码内容
        low = 0
        upp = 0
        dig = 0
        sym = 0
        for i in s:
            if i.islower():
                low = 1
            elif i.isupper():
                upp = 1
            elif i.isdigit():
                dig += 1
            elif i.isascii():  # 如果由符号,则sym+=1
                sym += 1
        if dig > 1: dig = 2
        if sym > 1: sym = 2.5
        score += int(10 * (low + upp + dig + sym))
        # 强度奖励
        ben = 0
        if low != 0 or upp != 0:
            if dig != 0:
                ben = 2
                if sym != 0:
                    ben = 3
                    if low != 0 and upp != 0:
                        ben = 5
        score += ben
        # 得分判定
        if score >= 90:
            print("VERY_SECURE")
        elif score >= 80:
            print("SECURE")
        elif score >= 70:
            print("VERY_STRONG")
        elif score >= 60:
            print("STRONG")
        elif score >= 50:
            print("AVERAGE")
        elif score >= 25:
            print("WEAK")
        else:
            print("VERY_WEAK")

考察知识点:
score += 1
str.islower()
str.isupper()
str.isdigit()
str.isascii()

#数据仓库与数据分析实习#
OD专栏练习梳理 文章被收录于专栏

OD专栏练习梳理

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-02 18:35
简历上把1个月实习写成了3个月,会进行背调吗?
码农索隆:一个月有一个月的实习经历,三个月有三个月的实习经历
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务