python小練習,密碼等級問題


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("密碼等級高級")
        





    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM