Python檢驗用戶輸入密碼的復(fù)雜度
密碼強度檢測規(guī)則:
- 至少包含一個數(shù)字
- 至少包含一個大寫字母
- 長度至少 8 位
主要知識點
- while 循環(huán)
- 推導(dǎo)式
- 列表 any 函數(shù)
- 命令行 input
代碼部分
密碼強度檢測
1、首先創(chuàng)建一個 python 文件
導(dǎo)入系統(tǒng)包
import platform
密碼強度檢測規(guī)則
至少包含一個數(shù)字至少包含一個大寫字母長度至少 8 位
每天打印一詞,激勵一下自己。
print("人生苦短,我用Python")
輸入密碼
while True: password = input("請輸入待檢測密碼: ")
列表推導(dǎo)式使用
print("數(shù)字檢測: ", [i.isdigit() for i in password]) print("大寫字母檢測: ", [i.isupper() for i in password]) print("密碼長度: ", len(password))
是否有數(shù)字, 推導(dǎo)式檢測。
hasNumber = any([i.isdigit() for i in password])
是否有大寫字母, 推導(dǎo)式檢測。
hasUpper = any([i.isupper() for i in password])
密碼檢測
if hasNumber and hasUpper and len(password) >= 8: print("密碼符合規(guī)則, 檢查通過") break else: print("密碼校驗未通過, 請重新輸入")
2、運行結(jié)果
請輸入待檢測密碼: 123213 數(shù)字檢測: [True, True, True, True, True, True] 大寫字母檢測: [False, False, False, False, False, False] 密碼長度: 6 密碼校驗未通過, 請重新輸入 請輸入待檢測密碼: abc1234 數(shù)字檢測: [False, False, False, True, True, True, True] 大寫字母檢測: [False, False, False, False, False, False, False] 密碼長度: 7 密碼校驗未通過, 請重新輸入 請輸入待檢測密碼: Abc34567 數(shù)字檢測: [False, False, False, True, True, True, True, True] 大寫字母檢測: [True, False, False, False, False, False, False, False] 密碼長度: 8 密碼符合規(guī)則, 檢查通過
全部代碼
import platform print("人生苦短,我用Python") while True: password = input("請輸入待檢測密碼: ") print("數(shù)字檢測: ", [i.isdigit() for i in password]) print("大寫字母檢測: ", [i.isupper() for i in password]) print("密碼長度: ", 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("密碼校驗未通過, 請重新輸入")
到此這篇關(guān)于Python檢驗用戶輸入密碼的復(fù)雜度的文章就介紹到這了,更多相關(guān)Python檢驗密碼復(fù)雜度內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實現(xiàn)新型冠狀病毒傳播模型及預(yù)測代碼實例
在本篇文章里小編給大家整理的是關(guān)于Python實現(xiàn)新型冠狀病毒傳播模型及預(yù)測代碼內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。2020-02-02Python NumPy數(shù)組裁切和數(shù)據(jù)類型的實現(xiàn)即原理詳解
這篇文章主要介紹了Python NumPy數(shù)組裁切和數(shù)據(jù)類型的實現(xiàn)即原理,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2023-05-05pandas實現(xiàn)將日期轉(zhuǎn)換成timestamp
今天小編就為大家分享一篇pandas實現(xiàn)將日期轉(zhuǎn)換成timestamp,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12python如何派生內(nèi)置不可變類型并修改實例化行為
這篇文章主要為大家詳細(xì)介紹了python如何派生內(nèi)置不可變類型并修改實例化行為,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-03-03Pycharm中安裝Pygal并使用Pygal模擬擲骰子(推薦)
這篇文章主要介紹了Pycharm中安裝Pygal并使用Pygal模擬擲骰子,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-04-04python?yaml文件數(shù)據(jù)按原有的數(shù)據(jù)順序dump問題小結(jié)
這篇文章主要介紹了python?yaml文件數(shù)據(jù)按原有的數(shù)據(jù)順序dump,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2023-11-11Python數(shù)據(jù)可視化編程通過Matplotlib創(chuàng)建散點圖代碼示例
這篇文章主要介紹了Python數(shù)據(jù)可視化編程通過Matplotlib創(chuàng)建散點圖實例,具有一定借鑒價值,需要的朋友可以參考下。2017-12-12