Python檢驗(yàn)用戶輸入密碼的復(fù)雜度
密碼強(qiáng)度檢測(cè)規(guī)則:
- 至少包含一個(gè)數(shù)字
- 至少包含一個(gè)大寫字母
- 長(zhǎng)度至少 8 位
主要知識(shí)點(diǎn)
- while 循環(huán)
- 推導(dǎo)式
- 列表 any 函數(shù)
- 命令行 input
代碼部分
密碼強(qiáng)度檢測(cè)
1、首先創(chuàng)建一個(gè) python 文件
導(dǎo)入系統(tǒng)包
import platform
密碼強(qiáng)度檢測(cè)規(guī)則
至少包含一個(gè)數(shù)字至少包含一個(gè)大寫字母長(zhǎng)度至少 8 位
每天打印一詞,激勵(lì)一下自己。
print("人生苦短,我用Python")輸入密碼
while True:
password = input("請(qǐng)輸入待檢測(cè)密碼: ")
列表推導(dǎo)式使用
print("數(shù)字檢測(cè): ", [i.isdigit() for i in password])
print("大寫字母檢測(cè): ", [i.isupper() for i in password])
print("密碼長(zhǎng)度: ", len(password))
是否有數(shù)字, 推導(dǎo)式檢測(cè)。
hasNumber = any([i.isdigit() for i in password])
是否有大寫字母, 推導(dǎo)式檢測(cè)。
hasUpper = any([i.isupper() for i in password])
密碼檢測(cè)
if hasNumber and hasUpper and len(password) >= 8:
print("密碼符合規(guī)則, 檢查通過")
break
else:
print("密碼校驗(yàn)未通過, 請(qǐng)重新輸入")
2、運(yùn)行結(jié)果
請(qǐng)輸入待檢測(cè)密碼: 123213 數(shù)字檢測(cè): [True, True, True, True, True, True] 大寫字母檢測(cè): [False, False, False, False, False, False] 密碼長(zhǎng)度: 6 密碼校驗(yàn)未通過, 請(qǐng)重新輸入 請(qǐng)輸入待檢測(cè)密碼: abc1234 數(shù)字檢測(cè): [False, False, False, True, True, True, True] 大寫字母檢測(cè): [False, False, False, False, False, False, False] 密碼長(zhǎng)度: 7 密碼校驗(yàn)未通過, 請(qǐng)重新輸入 請(qǐng)輸入待檢測(cè)密碼: Abc34567 數(shù)字檢測(cè): [False, False, False, True, True, True, True, True] 大寫字母檢測(cè): [True, False, False, False, False, False, False, False] 密碼長(zhǎng)度: 8 密碼符合規(guī)則, 檢查通過
全部代碼
import platform
print("人生苦短,我用Python")
while True:
password = input("請(qǐng)輸入待檢測(cè)密碼: ")
print("數(shù)字檢測(cè): ", [i.isdigit() for i in password])
print("大寫字母檢測(cè): ", [i.isupper() for i in password])
print("密碼長(zhǎng)度: ", len(password))
hasNumber = any([i.isdigit() for i in password])
hasUpper = any([i.isupper() for i in password])
if hasNumber and hasUpper and len(password) >= 8:
print("密碼符合規(guī)則, 檢查通過")
break
else:
print("密碼校驗(yàn)未通過, 請(qǐng)重新輸入")
到此這篇關(guān)于Python檢驗(yàn)用戶輸入密碼的復(fù)雜度的文章就介紹到這了,更多相關(guān)Python檢驗(yàn)密碼復(fù)雜度內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Pytorch實(shí)現(xiàn)圖片異常檢測(cè)功能
異常檢測(cè)指的是在正常的圖片中找到異常的數(shù)據(jù),由于無法通過規(guī)則進(jìn)行識(shí)別判斷,這樣的應(yīng)用場(chǎng)景通常都是需要人工進(jìn)行識(shí)別,本文給大家介紹了使用Pytorch實(shí)現(xiàn)圖片異常檢測(cè)功能,感興趣的朋友可以參考下2024-05-05
Python3.5內(nèi)置模塊之time與datetime模塊用法實(shí)例分析
這篇文章主要介紹了Python3.5內(nèi)置模塊之time與datetime模塊用法,結(jié)合實(shí)例形式分析了Python3.5 time與datetime模塊日期時(shí)間相關(guān)操作技巧,需要的朋友可以參考下2019-04-04
python語(yǔ)言中pandas字符串分割str.split()函數(shù)
分列在我們?nèi)粘9ぷ髦薪?jīng)常用到,從各種系統(tǒng)中導(dǎo)出的什么訂單號(hào)、名稱、日期很多都是復(fù)合組成的,這些列在匹配、合并時(shí)沒有辦法使用,我們經(jīng)常需要將她們分開,下面這篇文章主要給大家介紹了關(guān)于python語(yǔ)言中pandas字符串分割str.split()函數(shù)的相關(guān)資料,需要的朋友可以參考下2022-08-08
Python應(yīng)用開發(fā)之實(shí)現(xiàn)串口通信
在嵌入式開發(fā)中我們經(jīng)常會(huì)用到串口,串口通信簡(jiǎn)單,使用起來方便,且適用場(chǎng)景多。本文為大家準(zhǔn)備了Python實(shí)現(xiàn)串口通信的示例代碼,需要的可以參考一下2022-11-11
python實(shí)現(xiàn)FTP服務(wù)器服務(wù)的方法
本篇文章主要介紹了python實(shí)現(xiàn)FTP服務(wù)器的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-04-04

