python實(shí)現(xiàn)密碼驗(yàn)證合格程序的思路詳解
題目描述
輸入一行或多行字符串密碼,驗(yàn)證每行密碼是否符合規(guī)范,符合提示“OK”,否則“NG”。密碼規(guī)范為:
1.長(zhǎng)度超過8位
2.包括大小寫字母.數(shù)字.其它符號(hào),以上四種至少三種
3.不能有相同長(zhǎng)度超2的子串重復(fù)
解題思路
1.獲取輸入的多行字符串
2.對(duì)每行字符串進(jìn)行密碼驗(yàn)證:
1)如果密碼長(zhǎng)度小于等于8或者是密碼中有長(zhǎng)度超過2的重復(fù)子串,則密碼NG
2)在1)不滿足的情況下再看有沒有至少包含大寫字母、小寫字母、數(shù)字、其他符號(hào)
python代碼實(shí)現(xiàn)
import sys
import re
def has_Dup(str):
for i in range(len(str)-3):
for j in range(i+1, len(str)-3):
if str[i:i+3] == str[j:j+3]:
return True
def check_pwd(pwd):
if len(pwd) <= 8 or has_Dup(pwd):
return False
count = 0
if re.search('[0-9]', pwd):
count += 1
if re.search('[a-z]', pwd):
count += 1
if re.search('[A-Z]', pwd):
count += 1
if re.search('\W', pwd):
count += 1
if count >= 3:
return True
pwdList = sys.stdin.readlines()
for x in pwdList:
x = x.strip()
if check_pwd(x):
print('OK')
else:
print('NG')
總結(jié)
到此這篇關(guān)于python實(shí)現(xiàn)密碼驗(yàn)證合格程序的思路詳解的文章就介紹到這了,更多相關(guān)python密碼驗(yàn)證合格程序內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 用python的哈希函數(shù)對(duì)密碼加密
- python 密碼學(xué)示例——理解哈希(Hash)算法
- Python驗(yàn)證用戶密碼是否規(guī)范腳本示例
- python?密碼驗(yàn)證(滑塊驗(yàn)證)
- 詳解Python中的自定義密碼驗(yàn)證
- Python實(shí)現(xiàn)破解網(wǎng)站登錄密碼(帶token驗(yàn)證)
- python實(shí)現(xiàn)三次密碼驗(yàn)證的示例
- Python使用selenium實(shí)現(xiàn)網(wǎng)頁用戶名 密碼 驗(yàn)證碼自動(dòng)登錄功能
- Python使用bcrypt?或?Passlib?對(duì)系統(tǒng)用戶密碼進(jìn)行哈希和驗(yàn)證處理操作
相關(guān)文章
python生成并處理uuid的實(shí)現(xiàn)方式
這篇文章主要介紹了python生成并處理uuid的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-03-03
Python面向?qū)ο蟪绦蛟O(shè)計(jì)構(gòu)造函數(shù)和析構(gòu)函數(shù)用法分析
這篇文章主要介紹了Python面向?qū)ο蟪绦蛟O(shè)計(jì)構(gòu)造函數(shù)和析構(gòu)函數(shù)用法,結(jié)合具體實(shí)例形式分析了Python面向?qū)ο蟪绦蛟O(shè)計(jì)中構(gòu)造函數(shù)與析構(gòu)函數(shù)的概念、原理、功能及相關(guān)使用技巧,需要的朋友可以參考下2019-04-04
Windows系統(tǒng)下實(shí)現(xiàn)pycharm運(yùn)行.sh文件(本地運(yùn)行和打開服務(wù)器終端)
PyCharm是Python開發(fā)的高效率IDE,但是很多時(shí)候需要同時(shí)開發(fā)Bash(shell)腳本,下面這篇文章主要給大家介紹了關(guān)于Windows系統(tǒng)下實(shí)現(xiàn)pycharm運(yùn)行.sh文件(本地運(yùn)行和打開服務(wù)器終端)的相關(guān)資料,需要的朋友可以參考下2022-09-09
一篇文章搞懂Python Unittest測(cè)試方法的執(zhí)行順序
unittest是Python標(biāo)準(zhǔn)庫(kù)自帶的單元測(cè)試框架,是Python版本的JUnit,下面這篇文章主要給大家介紹了如何通過一篇文章搞懂Python Unittest測(cè)試方法的執(zhí)行順序,需要的朋友可以參考下2021-09-09
在Python中實(shí)現(xiàn)函數(shù)重載的示例代碼
這篇文章主要介紹了在Python中實(shí)現(xiàn)函數(shù)重載的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
Python-OpenCV深度學(xué)習(xí)入門示例詳解
深度學(xué)習(xí)已經(jīng)成為機(jī)器學(xué)習(xí)中最受歡迎和發(fā)展最快的領(lǐng)域。深度學(xué)習(xí)的常見應(yīng)用包括語音識(shí)別、圖像識(shí)別、自然語言處理、推薦系統(tǒng)等等。本文將通過一些示例代碼,帶你詳細(xì)了解深入學(xué)習(xí)2021-12-12
解決python3 HTMLTestRunner測(cè)試報(bào)告中文亂碼的問題
今天小編就為大家分享一篇解決python3 HTMLTestRunner測(cè)試報(bào)告中文亂碼的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-12-12
python2.7+selenium2實(shí)現(xiàn)淘寶滑塊自動(dòng)認(rèn)證功能
這篇文章主要為大家詳細(xì)介紹了python2.7+selenium2實(shí)現(xiàn)淘寶滑塊自動(dòng)認(rèn)證功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02
用Django實(shí)現(xiàn)一個(gè)可運(yùn)行的區(qū)塊鏈應(yīng)用
這篇文章主要介紹了用Django實(shí)現(xiàn)一個(gè)可運(yùn)行的區(qū)塊鏈應(yīng)用,需要的朋友可以參考下2018-03-03

