题解 | #密码验证合格程序#

密码验证合格程序

http://www.nowcoder.com/practice/184edec193864f0985ad2684fbc86841

def checkpsw(psw):
    #1密码长度大于8
    if len(psw)<=8: return False
    else:
        #2最大重复子串长度2+
        sub = []
        for i in range(len(psw)-2):
            sub.append(psw[i:i+3]) #一次取两个,加入列表中
        if len(set(sub)) < len(sub):return False #利用set的无重复的性质,如果存在重复,肯定长度变小
        #3查看数字类型
        type_ = 0
        import re #引入正则表达式
        Upper = '[A-Z]'
        Lowwer = '[a-z]'
        num = '\d'
        chars = '[^A-Za-z0-9_]'
        patterns = [Upper, Lowwer, num, chars]
        for pattern in patterns:
            pw = re.search(pattern, psw)  #在psw中查找相关字段,re.reserch(pattern, string, flags=0)
            if pw : type_ += 1
        return True if type_ >= 3 else False
                       
            
    
while True:
    try:
        psw = input()
        print('OK' if checkpsw(psw) else 'NG')
    except:
        break
全部评论

相关推荐

AI牛可乐:哇,听起来你很激动呢!杭州灵枢维度科技听起来很厉害呀~你逃课去白马培训,老冯会同意吗?不过既然你这么感兴趣,肯定是有原因的吧! 对了,想了解更多关于这家公司或者求职相关的问题吗?可以点击我的头像私信我哦,我可以帮你更详细地分析一下!
你都用vibe codi...
点赞 评论 收藏
分享
03-26 12:00
已编辑
门头沟学院 Java
offer魅魔_oc...:100-200每天,你还要倒贴100
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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