密碼強(qiáng)度判斷
描述
用戶輸入一個(gè)字符串做為密碼锈玉,判斷密碼強(qiáng)度骄恶,規(guī)則為:密碼長(zhǎng)度小于8弱密碼拇砰,密碼長(zhǎng)度大于等于8且包含至少2種字符為中等強(qiáng)度梅忌、密碼包含3種字符為強(qiáng)、包含全部4種字符為極強(qiáng)除破。
提示:
string.digits 可返回'0123456789'
string.ascii_lowercase 可返回'abcdefghijklmnopqrstuvwxyz'
string.ascii_uppercase 可返回'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
string.punctuation 可返回'!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~'
輸入格式
輸入一個(gè)字符串
輸出格式
密碼強(qiáng)度的判斷結(jié)果牧氮,分:弱、中瑰枫、強(qiáng)援雇、極強(qiáng)咪笑,共四種
代碼:
import string
pwd = input()
strong = d = al = au = pu = 0
for ch in pwd:
if ch in string.digits: #是否包含數(shù)字
d = 1
elif ch in string.ascii_lowercase: #是否包含小寫字母
al = 1
elif ch in string.ascii_uppercase: #是否包含大寫字母
au = 1
elif ch in string.punctuation: #是否包含指定的標(biāo)點(diǎn)符號(hào)
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('強(qiáng)')
elif strong == 4:
print('極強(qiáng)')