python字串判斷密碼強弱
阿新 • • 發佈:2020-03-20
本文例項為大家分享了Python密碼強弱判斷的具體程式碼,供大家參考,具體內容如下
程式說明:通過獲取使用者輸入,判斷密碼長度是否大於8,同時判斷其中是否包含數字和字母,並返回相關資訊。
【相關知識點】
Python字串:
str.isnumeric() -----檢測字串是否只有數字 返回True or False(注意是隻有數字)
str.isalpha() -----檢測字串中是否只有字母 返回True or False
str.islower() -----檢測字串中是否都為小寫
str.isupper() ------檢測字串中是否都為大寫
""" 作者: 王嘯北 日期: 2019.05.19 功能: 判斷輸入密碼的強弱 版本: v2.0 增加功能: 迴圈終止 """ # 判斷輸入字串中是否含有數字 def existNumber(password_str): has_number = False for c in password_str: if c.isnumeric(): has_number = True break return has_number # 程式中一般不連續用兩個return # return True # return 提前終止迴圈 # return False # 判斷輸入字串中是否含有字母 # def existAlpha(password_str): # for c in password_str: # if c.isalpha(): # return True # return False # v2.0 判斷輸入字串中是否含有字母 def existAlpha(password_str): has_Alpha = False for c in password_str: if c.isalpha(): has_Alpha = True break return has_Alpha def main(): """ 主函式 :return:12 """ Try_times = 5 while Try_times > 0: password = input('請輸入密碼:') # 密碼強度 strength_level = 0 # 規則一: 密碼長度大於8 if len(password) >= 8: strength_level += 1 else: print('請輸入長度大於8的密碼...') # 規則二: 判斷是否有數字 if existNumber(password): strength_level += 1 else: print('密碼中需包含數字') #規則三: 密碼中包含字母 if existAlpha(password): strength_level += 1 else: print('密碼中需包含字母') if strength_level == 3: print('密碼輸入正確!') break else: Try_times -= 1 if Try_times == 0: print('密碼錯誤次數太多!') else: print('密碼錯誤!剩餘{}次'.format(Try_times)) print() #新增空行 if __name__ == '__main__': main()
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。