Python的听课笔记案例6--判断密码数据1.0

原创
小哥 3年前 (2022-11-02) 阅读数 8 #大杂烩

口令强度:指口令抵抗属性或暴力破解的有效性。
强密码可以降低安全漏洞的总体风险。
简单版本(通用)规则:
1,密码长度至少为8位
2,密码包含数字
3密码包含字母

设置一个变量strength_level用来记录密码的强度,起始位。0.一个条件被满足并被添加到它上面。1。
长度确定:使用len()方法;
包含数字判断:使用isnumeric()方法;
包含字母判断:使用isalpha()方法;
如果strength_level等于3、密码强度合格,否则不合格。

str.isnumeric()
检测字符串是否仅由数字组成
str.isalpha()
检测字符串是否仅由字母组成
str.islower()
检测字符串中的所有字母是否都是小写
str.isupper()
检测字符串中的所有字母是否都为大写
更多is***()请参阅:
https://docs.python.org/3/library/stdtypes.html#string-methods

"""
    作者:lanxingbudui
    版本:1.0
    日期:2019-07-15
    功能:确定密码强度
"""

def check_number_str(password_str):
    """
    确定字符串是否包含数字。
    """
    for c in password_str:
        if c.isnumeric():
            return True
    return False

def check_letter_str(password_str):
    """
    确定字符串是否包含字母
    """
    for c in password_str:
        if c.isalpha():
            return True
    return False

def main():
    """
    主函数
    """
    pass
    password = input(请输入密码:)

    # 密码强度
    strength_level = 0

    # 规则1:密码长度较长8位
    if len(password) >= 8:
        strength_level += 1
    else:
        print(密码长度必须大于8位)
    # 规则2:密码包含数字
    if check_number_str(password):
        strength_level += 1
    else:
        print(密码要求包括数字!)
    # 规则3:密码包含字母
    if check_letter_str(password):
        strength_level += 1
    else:
        print(密码要求包括字母!)
    if strength_level == 3:
        print(密码强度合格!)
    else:
        print(密码强度不合格!)

if __name__ == __main__:
        main()

版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除