guardianpeak 发表于 2020-5-9 20:37:12

十四课问题

p1 = '''您的密码安全级别评定为:高
请继续保持'''
p2 = '''您的密码安全级别评定为:中
请按以下方式提升您的密码安全级别:
      1.密码必须由数字、字母及特殊字符三种组合
      2.密码只能由字母开头
      3.密码长度不能低于16位'''
p3 = '''您的密码安全级别评定为:低
请按以下方式提升您的密码安全级别:
      1.密码必须由数字、字母及特殊字符三种组合
      2.密码只能由字母开头
      3.密码长度不能低于16位'''
pw = input('请输入需要检查的密码组合:')
t = {'~','!','@','#','$','%','^','&','*','(',')','=','-','/',',','.','?','<','>',';',':','[',']','{','}','|','\\'}
pw1 = set( for i in range(0,len(pw))])
# print(t.isdisjoint(pw1))
if len(pw) <= 8 or str.isalpha(pw) == True or str.isdigit(pw) == True:
    print(p3)
elif (len(pw) > 16) and (str.isalnum(pw) == True) and (t.isdisjoint(pw1) == False):
    print(p1)
else:
    print(p2)

求帮检查一下,P1始终打印不出来,不知道哪里出问题了。感谢感谢~

guardianpeak 发表于 2020-5-9 20:44:02

我知道问题了。。。自己挖坑自己跳

Twilight6 发表于 2020-5-9 20:53:12

guardianpeak 发表于 2020-5-9 20:44
我知道问题了。。。自己挖坑自己跳

emmm,不符合你if条件吧

guardianpeak 发表于 2020-5-9 21:14:19

本帖最后由 guardianpeak 于 2020-5-9 21:22 编辑

真费劲。。。。。。太难了,一天只能做一题


import re
p1 = '''您的密码安全级别评定为:高
请继续保持'''
p2 = '''您的密码安全级别评定为:中
请按以下方式提升您的密码安全级别:
      1.密码必须由数字、字母及特殊字符三种组合
      2.密码只能由字母开头
      3.密码长度不能低于16位'''
p3 = '''您的密码安全级别评定为:低
请按以下方式提升您的密码安全级别:
      1.密码必须由数字、字母及特殊字符三种组合
      2.密码只能由字母开头
      3.密码长度不能低于16位'''
pw = input('请输入需要检查的密码组合:')
t = {'~','!','@','#','$','%','^','&','*','(',')','=','-','/',',','.','?','<','>',';',':','[',']','{','}','|','\\'}
pw1 = set( for i in range(0,len(pw))])
pattern = re.compile('')
list1 = pattern.findall(pw)
def containenglish(str1):
    return bool(re.search('', str1))
if len(pw) <= 8 or str.isalpha(pw) == True or str.isdigit(pw) == True:
    print(p3)
elif (len(pw) > 16) and ((list1 == []) == False) and (containenglish(pw) == True) and (t.isdisjoint(pw1) == False):
    print(p1)
else:
    print(p2)
页: [1]
查看完整版本: 十四课问题