python實現(xiàn)密碼驗證合格程序的思路詳解
題目描述
輸入一行或多行字符串密碼,驗證每行密碼是否符合規(guī)范,符合提示“OK”,否則“NG”。密碼規(guī)范為:
1.長度超過8位
2.包括大小寫字母.數(shù)字.其它符號,以上四種至少三種
3.不能有相同長度超2的子串重復
解題思路
1.獲取輸入的多行字符串
2.對每行字符串進行密碼驗證:
1)如果密碼長度小于等于8或者是密碼中有長度超過2的重復子串,則密碼NG
2)在1)不滿足的情況下再看有沒有至少包含大寫字母、小寫字母、數(shù)字、其他符號
python代碼實現(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')
總結
到此這篇關于python實現(xiàn)密碼驗證合格程序的思路詳解的文章就介紹到這了,更多相關python密碼驗證合格程序內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python面向對象程序設計構造函數(shù)和析構函數(shù)用法分析
這篇文章主要介紹了Python面向對象程序設計構造函數(shù)和析構函數(shù)用法,結合具體實例形式分析了Python面向對象程序設計中構造函數(shù)與析構函數(shù)的概念、原理、功能及相關使用技巧,需要的朋友可以參考下2019-04-04
Windows系統(tǒng)下實現(xiàn)pycharm運行.sh文件(本地運行和打開服務器終端)
PyCharm是Python開發(fā)的高效率IDE,但是很多時候需要同時開發(fā)Bash(shell)腳本,下面這篇文章主要給大家介紹了關于Windows系統(tǒng)下實現(xiàn)pycharm運行.sh文件(本地運行和打開服務器終端)的相關資料,需要的朋友可以參考下2022-09-09
一篇文章搞懂Python Unittest測試方法的執(zhí)行順序
unittest是Python標準庫自帶的單元測試框架,是Python版本的JUnit,下面這篇文章主要給大家介紹了如何通過一篇文章搞懂Python Unittest測試方法的執(zhí)行順序,需要的朋友可以參考下2021-09-09
在Python中實現(xiàn)函數(shù)重載的示例代碼
這篇文章主要介紹了在Python中實現(xiàn)函數(shù)重載的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-12-12
解決python3 HTMLTestRunner測試報告中文亂碼的問題
今天小編就為大家分享一篇解決python3 HTMLTestRunner測試報告中文亂碼的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-12-12
python2.7+selenium2實現(xiàn)淘寶滑塊自動認證功能
這篇文章主要為大家詳細介紹了python2.7+selenium2實現(xiàn)淘寶滑塊自動認證功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-02-02
用Django實現(xiàn)一個可運行的區(qū)塊鏈應用
這篇文章主要介紹了用Django實現(xiàn)一個可運行的區(qū)塊鏈應用,需要的朋友可以參考下2018-03-03

