密码验证合格程序-题解

首先注意一个问题。 超过没有等于号 这个问题耽误了好久。其余看代码就能很简单。虽然很长,思路很清晰。

def check(string):
    if len(string)<=8:
        return False
    ans = [0,0,0,0]
    for i in string:
        if 'z'>=i>='a':
            if not ans[0]:
                ans[0] = ans[0] + 1 
        elif 'Z'>=i>='A' :
            if not ans[1]:
                ans[1] = ans[1] + 1 
        elif i.isdigit() :
            if not ans[2]:
                ans[2] = ans[2] + 1 
        else:
            if not ans[3]:
                ans[3] = ans[3] + 1 
    if sum(ans) < 3:
        return False
    for index in range(len(string)):
        for i in range(index+3,len(string)):
            if string[index:index+3] == string[i:i+3]:
                return False
    return True 

while True:
    try:
        string=input()
        if not check(string):
            print('NG')
        else:
            print('OK')
    except:
        break
全部评论

相关推荐

代码飞升_不回私信人...:别这样贬低自己,降低预期,放平心态,跟昨天的自己比。做好自己,反而会效率更高心态更好,加油兄弟
点赞 评论 收藏
分享
10-31 22:23
门头沟学院 Java
天然不是卷王:太好了 佬的金九银十结束,等offer吐出来,我的金11银12就要开始了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务