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

密码验证合格程序

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

import sys
import re

while True:
    try:
        st = input()
        pat3 = []    ##构建列表,用于存3位字符的匹配格式
        con1 = len(st) > 8  #条件1:字符串长度大于8
        con2a = re.search('[a-z]+',st) != None  #条件2a:包含小写字母
        con2A = re.search('[A-Z]+',st) != None  #条件2A:包含大写字母
        con2 = re.search('[0-9]+',st) != None   #条件2:包含字母
        con2o = len(re.sub('\w','',st)) > 0     #条件2o:把字母和数字去掉后,还有其他字符
        for i in range(len(st)-2):  #逐3位摘出字符串模式列表
            pat3.append(st[i:(i+3)])
        con3 = (len(pat3) == len(set(pat3)))    #条件3:字符串字符列表查重
        if all([con1,con2a+con2A+con2+con2o>=3,con3]) == True: #条件1,3必须满足,条件2满足3个及以上
            res = 'OK'
        else:
            res = 'NG'
        print(res)
    except:
        break

全部评论

相关推荐

2025-11-04 19:05
已编辑
东莞城市学院 单片机
不知道怎么取名字_:你这个要实习两年?哪有这么久的,感觉就是即使你毕业了,但还按实习的话,是不是不用给你缴社保公积金啥的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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