鱼C论坛

 找回密码
 立即注册
查看: 2868|回复: 4

请问为啥识别小写字母的时候会3和9之间有的识别不出。。还有最后为啥结果是个空列...

[复制链接]
发表于 2021-6-1 10:18:27 | 显示全部楼层 |阅读模式
8鱼币
def temp(str1):
    list1 = []
    zimu ='qwertyuiopasdfghjklzxcvbnm'
    zimu1 ='QWERTYUIOPASDFGHJKLZXCVBNM'
    a = 0
    b = 0
    time1 = 0
    for each in str1:
        if each in zimu:
            b = str1.index(each,a)
            a = b+1
            print (each,end=',')
            print (b)
            for each1 in str1[(b-3):(b+4)]:
                if each1 in zimu1:
                    time1 +=1
            if time1 == 3:
                list1.append(each)
    print (list1)

string2.zip

6.17 KB, 下载次数: 3

字符串

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-1 10:43:52 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-1 10:44:19 From FishC Mobile | 显示全部楼层
这代码是准备干啥的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-1 10:57:50 | 显示全部楼层
wp231957 发表于 2021-6-1 10:44
这代码是准备干啥的

用来在字符串里面找密码的题。。a) 每位密码为单个小写字母Powered by bbs.fishc.com
    b) 每位密码的左右两边均有且只有三个大写字母j~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-1 17:26:50 | 显示全部楼层
本帖最后由 淡淡凉 于 2021-6-2 11:53 编辑
for each1 in str1[(b-3):(b+4)]:
                if each1 in zimu1:
                    time1 +=1
            if time1 == 3:
                list1.append(each)

你的条件为只有time1==3才往列表列表里添加元素,因为不符合条件所以就没有添加到列表,列表为空,所以打印的列表为空;你可以试试把条件改为time<=3,符合条件成功添加后还要重置time1=0
def temp(str1):
    list1 = []
    zimu ='qwertyuiopasdfghjklzxcvbnm'
    zimu1 ='QWERTYUIOPASDFGHJKLZXCVBNM'
    a = 0
    b = 0
    
    for each in str1:
        time1 = 0
        if each in zimu:
            b = str1.index(each,a)
            a = b+1
            print (each,end=',')
            print (b,end='\t')
            #print(str1[(b-3 if b-3>0 else 0):(len(str1) if b+4>len(str1) else b+4)])
            list2 = []
            str2 = str1[(b-3 if b-3>0 else 0):(len(str1) if b+4>len(str1) else b+4)]
            for each1 in str2:
                if each1 in zimu1:
                    list2.append(each1)
                    time1 +=1
            print(str2+'共出现大写字母的次数:',time1,list2)
            if time1 <= 3:
                list1.append(each)
                
    print (list1)

temp('PoWErEDbybbs.FishC.com')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-15 18:35

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表