Python习题

密码强度判断

2019-04-11  本文已影响0人  Dujf

密码强度判断

描述

用户输入一个字符串做为密码,判断密码强度,规则为:密码长度小于8弱密码,密码长度大于等于8且包含至少2种字符为中等强度、密码包含3种字符为强、包含全部4种字符为极强。
提示:

string.digits 可返回'0123456789'
string.ascii_lowercase 可返回'abcdefghijklmnopqrstuvwxyz'
string.ascii_uppercase 可返回'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
string.punctuation 可返回'!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~'


输入格式

输入一个字符串


输出格式

密码强度的判断结果,分:弱、中、强、极强,共四种


代码:

import string

pwd = input()
strong = d = al = au = pu = 0
for ch in pwd:
    if ch in string.digits:   #是否包含数字
        d = 1
    elif ch in string.ascii_lowercase:  #是否包含小写字母
        al = 1
    elif ch in string.ascii_uppercase:   #是否包含大写字母
        au = 1
    elif ch in string.punctuation:  #是否包含指定的标点符号
        pu = 1
if len(pwd) < 8:
    strong = 0
else:
    strong = d + al + au + pu
if strong < 2:
    print('弱')
elif strong == 2:
    print('中')
elif strong == 3:
    print('强')
elif strong == 4:
    print('极强')
上一篇 下一篇

猜你喜欢

热点阅读