fly51fly

gen_pass_v1

Nov 2nd, 2021
280
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.35 KB | None | 0 0
  1. while 1:
  2.     #TODO:用户输入密码
  3.     user_password = input("请输入新密码:")
  4.     #TODO:判断密码安全性
  5.     UPPER = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
  6.     LOWER = 'abcdefghijklmnopqrstuvwxyz'
  7.     DIGIT = '0123456789'
  8.  
  9.     have_upper = False
  10.     have_lower = False
  11.     have_digit = False
  12.     have_puctuation = False
  13.  
  14.     for char in user_password:
  15.         if char in UPPER:
  16.             have_upper = True
  17.         elif char in LOWER:
  18.             have_lower = True
  19.         elif char in DIGIT:
  20.             have_digit = True
  21.         else:
  22.             have_puctuation = True
  23.  
  24.     have_enough_char = len(user_password) >= 8
  25.    
  26.     is_secure = (have_enough_char
  27.         and have_upper
  28.         and have_lower
  29.         and have_digit
  30.         and have_puctuation)
  31.     #TODO:输出结果
  32.     if is_secure:
  33.         print('密码符合要求!')
  34.         break
  35.     else:
  36.         prompt = '密码不符合要求,'
  37.         if not have_enough_char:
  38.             prompt += '长度不足8,'
  39.         if not have_upper:
  40.             prompt += '没有包含大写符号,'
  41.         if not have_lower:
  42.             prompt += '没有包含小写符号,'
  43.         if not have_digit:
  44.             prompt += '没包含数字,'
  45.         if not have_puctuation:
  46.             prompt += '没包含标点,'
  47.         prompt = prompt[:-1]
  48.         print(prompt)
Add Comment
Please, Sign In to add comment