| 
 | 
 
 
发表于 2020-5-26 16:18:17
|
显示全部楼层
 
 
 
 本帖最后由 xiaosi4081 于 2020-5-26 16:21 编辑  
 
原先的代码: 
- symbols = r'''`!@#$%^&*()_+-=/*{}[]\|'";:/?,.<>'''
 
 - chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
 
 - nums = '0123456789'
 
  
- password = input('请输入需要检查的密码组合:')
 
  
- #先判断密码长度
 
 - length = len(password)
 
  
- while (password.isspace() or length == 0):
 
 -     password = input('您输入密码为空(或空格),请重新输入:')
 
 -     length = len(password) #这里while下为什么还需要len()一次,上面不是已经有了吗,是必要的吗?必要的,因为你上面重新赋值了
 
  
- if length <= 8:
 
 -     flag_len = 1
 
 - elif 8 < length <16:
 
 -     flag_len = 2
 
 - else:
 
 -     flag_len = 3
 
  
- flag_con = 0 #这是对什么的初始化值对呀?
 
  
- #判断是否包含特殊字符
 
  
- for each in password:
 
 -     if each in symbols:
 
 -         flag_con += 1
 
 -         break
 
  
- #判断是否包含字母
 
  
- for each in password:
 
 -     if each in chars:
 
 -         flag_con += 1
 
 -         break
 
  
- #判断是否包含数字
 
  
- for each in password:
 
 -     if each in nums:
 
 -         flag_con +=1
 
 -         break
 
 - while 1: #这是啥意思,能不能理解为while True?可以
 
 -     print ('您的密码安全级别评定为:',end=' ')
 
 -     if flag_len == 1 or flag_con == 1:
 
 -         print ('低')
 
 -     elif flag_len == 3 and flag_con == 3 and (password[0] in chars):
 
 -         
 
 - #这里flag_con之所以能等于3是因为上面3个判断条件都满足if了,从0加了3次,是吗?
 
 -         print ('高')
 
 -         print ('请继续保持')
 
 -         break
 
 -     else:
 
 -         print ('中')
 
  
 
-     print ("请按以下方式提升您的密码安全级别:\n\
 
 -     \t1. 密码必须由数字、字母及特殊字符三种组合\n\
 
 -     \t2. 密码只能由字母开头\n\
 
 -     \t3. 密码长度不能低于16位")
 
 -     break
 
 
  复制代码 |   
 
 
 
 |