|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 香喷喷的咸鱼 于 2021-1-17 11:32 编辑
- str1 = ''''ABSaDKSbRIHcRHGcdDIF'''
- left=0
- right=0
- small=0
- # 此处不可for each in str1 此时each代表的是某一元素的名称 而非索引,不方便下文找大写字母
- length=len(str1)
- list1=[]
- str2=''
- #判断前只有3个是大写字母:是的话返回1
- def Big():
- for a in range(-1,-4,-1):
- if str[a+i].isupper:
- b+=1
- if b==3:
- return 1
- else:
- return 0
-
- #判断后只有3个是小大写字母:是的话返回1
- def Small():
- for a in range(4):
- if str[a+i].isupper:
- b+=1
- if b==3:
- return 1
- else:
- return 0
-
- for i in range(length):
- #判断是否回车!!经常忘记
- if str1[i]=='\n':
- continue #continue 用于此处恰到好处!
-
-
-
- a=0
- b=0
-
-
- if (str1[i].isupper)and Big() and Small():#先判断小写字母,再判前后只有三个大写
- list1.append(str1[i])
-
-
-
- str2=''.join(list1)
- print(str2)
复制代码
这是我写的程序,奈何知识有限,无法找到其中的错误,我想大概的思路应该是正确的。
还希望,温柔善良的鱼油帮帮我这个鱼渣找找错!!
感激不尽!
这是python的课后题!
本帖最后由 °蓝鲤歌蓝 于 2021-1-17 14:11 编辑
- str1 = "ABSabDKSbRIHcRHGdDIFeokj"
- s = "a" + str1.replace("\n", "") + "a"
- M = L = 0
- p = ""
- for r in range(len(s)):
- if s[r].islower():
- if M - L == r - M == 4:
- p += s[M]
- L, M = M, r
- print(p)
复制代码
用下标判断不香吗?
|
-
|