a48948008 发表于 2021-7-22 13:26:50

下面的代码输入相同,但结果不同,帮忙看看,是什么情况


b = r'''`!@#$%^&*()_+-=/*{}[]\|'";:/?,.<>'''
c = '0123456789'
d = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
e = 0
f = 0
g = 0

while True:
    possword = input("请输入需要检查的密码组合(输入'q'退出):")
    a = len(possword)
    if possword == 'q':
      break
    elif a == 0 or possword.isspace():
      possword = input("您输入的密码为空(或空格),请重新输入:")

    elif possword.isalpha() or possword.isdigit() or a < 8:
      print('您的密码安全级别评定为:低')
    elif a < 16:
      print('您的密码安全级别评定为:中')
    else:
      for i in possword:
            if i in b:
                e += 1
            elif i in c:
                f += 1
            elif i in d:
                g += 1
               
      if e * f * g != 0:
            print('您的密码安全级别评定为:高')
            print("请继续保持")
            continue
      else:
            print('您的密码安全级别评定为:中')
            
    print("请按以下方式提升您的密码安全级别:\n\
            \t1. 密码必须由数字、字母及特殊字符三种组合\n\
            \t2. 密码只能由字母开头\n\
            \t3. 密码长度不能低于16位")

xiaosi4081 发表于 2021-7-22 14:01:10



b = r'''`!@#$%^&*()_+-=/*{}[]\|'";:/?,.<>'''
c = '0123456789'
d = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
e = 0
f = 0
g = 0

while True:
    possword = input("请输入需要检查的密码组合(输入'q'退出):")
    a = len(possword)
    if possword == 'q':
      break
    elif a == 0 or possword.isspace():
      possword = input("您输入的密码为空(或空格),请重新输入:")

    elif possword.isalpha() or possword.isdigit() or a < 8:
      print('您的密码安全级别评定为:低')
    elif a < 16:
      print('您的密码安全级别评定为:中')
    else:
      e = 0;f = 0;g=0
      for i in possword:
            if i in b:
                e += 1
            elif i in c:
                f += 1
            elif i in d:
                g += 1
               
      if e * f * g != 0:
            print('您的密码安全级别评定为:高')
            print("请继续保持")
            continue
      else:
            print('您的密码安全级别评定为:中')
            
    print("请按以下方式提升您的密码安全级别:\n\
            \t1. 密码必须由数字、字母及特殊字符三种组合\n\
            \t2. 密码只能由字母开头\n\
            \t3. 密码长度不能低于16位")
每次判断是否属于高安全性时,需要将3个变量初始化

a48948008 发表于 2021-7-23 10:26:42

谢谢
页: [1]
查看完整版本: 下面的代码输入相同,但结果不同,帮忙看看,是什么情况