1. # 密碼安全性檢查代碼 2. # 3. # 低級密碼要求: 4. # 1. 密碼由單純的數字或字母組成 5. # 2. 密碼長度小於等於8位 6. # 7. # 中級密碼要求: 8. # 1. 密碼必須由數字、字母或特殊字符(僅限:~!@#$%^&*()_=-/,.?<>;:[]{}|\)任意兩種組合 9. # 2. 密碼長度不能低於8位 10. # 11. # 高級密碼要求: 12. # 1. 密碼必須由數字、字母及特殊字符(僅限:~!@#$%^&*()_=-/,.?<>;:[]{}|\)三種組合 13. # 2. 密碼只能由字母開頭 14. # 3. 密碼長度不能低於16位
#低級密碼要求 #1.密碼由純數字或字母組成 #2.密碼長度小於等於8位 '''isbool = True while isbool: pwd1 = input("低級密碼測試") if pwd1.isdigit() or pwd1.isalpha(): print("數字或密碼") isbool = False else: print("不是數字或字母") isbool = True continue if len(pwd1)<=8: print("長度小於8") isbool = False else: print("長度不正確") isbool = True continue ''' symbols = r'~!@#$%^&*()_=-/,.?<>;:[]{}|\'' chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' nums = '1234567890' isbool = True while isbool: pwd = input("請輸入要檢查的密碼") length = len(pwd) #isspace()是否都為空格 while(pwd.isspace() or length==0): pwd = input("密碼不能為空,請重新輸入") # 判斷長度 0低,1中,2高 flag_len = 0 if(length<=8): flag_len =0 elif(8<length<16): flag_len=1 else: flag_len=2 #判斷是否包含特殊字符 flag_con=0 for each in pwd: if each in symbols: flag_con+=1 break #判斷是否包含字母 flag_chars=0 for each in pwd: if each in chars: flag_chars +=1 break #判斷是否包含數字 flag_num =0 for each in pwd: if each in nums: flag_num+=1 break if (pwd.isdigit() or pwd.isalpha()): flag_num=5 flag_chars=5 print("您的密碼安全等級為:") if flag_len==0 or (flag_num==5 and flag_chars==5): print("密碼等級低") elif(flag_len==1 and flag_con==1 and flag_chars==1): print("密碼等級中級") elif(flag_len==1 and flag_num==1 and flag_chars==1): print("密碼等級中級") elif(flag_len==1 and flag_con==1 and flag_num==1): print("密碼等級中級") elif(flag_len==2 and flag_con==1 and flag_chars==1): print("密碼等級高級") elif(flag_len==2 and flag_num==1 and flag_chars==1): print("密碼等級高級") elif(flag_len==2 and flag_con==1 and flag_num==1): print("密碼等級高級")