jiong_jiong 发表于 2020-7-7 13:07:31

本帖最后由 jiong_jiong 于 2020-7-7 13:25 编辑

Twilight6 发表于 2020-7-7 12:49
帮你大致改了下代码,很多多余的地方去掉了,比如 if 判断条件和 while 循环条件相同的,都说多余 ...

感谢感谢,我继续思考一下。
目前的问题是,最后的cd,只能输出c

jiong_jiong 发表于 2020-7-7 13:15:18

yhhpf 发表于 2020-7-7 13:07
你24-27循环的是把列表得出来,我上面说了,你列表输出是否正确我们先不看了。
得出列表temp后,按你的 ...

“”得出列表temp后,按你的思路,咋们temp现在是不是应该记录的是:‘前面是连续3个大写字母后碰到的第一个小写字母’?
那继续的思路不是应该循环这个temp列表,把每个元素在str1所在的位置拿到,再判断该位置后面是否也是刚好连续3位大写?“”

对的,就是你这个意思。我思路就是这个。

jiong_jiong 发表于 2020-7-7 13:23:16

yhhpf 发表于 2020-7-7 11:11
你参考下我学习的时候改的代码吧...

大哥,我刚刚试了一下你的代码 也有一个小问题:
只能输出单个字符,不能输出大于1个字符的字符串

你试试把str1的a改为ak,运行后,没有办法输出ak。

yhhpf 发表于 2020-7-7 13:32:40

jiong_jiong 发表于 2020-7-7 13:23
大哥,我刚刚试了一下你的代码 也有一个小问题:
只能输出单个字符,不能输出大于1个字符的字符串



    a) 每位密码为单个小写字母
    b) 每位密码的左右两边均有且只有三个大写字母

题目不是限制每位密码只为“单个”小写字母么???

jiong_jiong 发表于 2020-7-7 13:36:54

本帖最后由 jiong_jiong 于 2020-7-7 13:38 编辑

yhhpf 发表于 2020-7-7 13:32
a) 每位密码为单个小写字母
    b) 每位密码的左右两边均有且只有三个大写字母



对的,原题是没问题。

我自己在想 如果是多位的会怎么样。我可能想多了。

吕四毛 发表于 2021-2-26 16:31:16

本帖最后由 吕四毛 于 2021-2-26 16:32 编辑

yhhpf 发表于 2020-7-7 11:11
你参考下我学习的时候改的代码吧...

大哥,我自己正在做这题,发现你的代码也存在一个问题?
b) 每位密码的左右两边均有且只有三个大写字母
你的代码如果str1 = '''AAABSaDKSbRIHcRHGcdDIFzAAACC'''
此时a的左边不符合且只有三个大写字母 z的右边也不符合
a和z也会被打印...应该是有问题的
页: 1 [2]
查看完整版本: 第020讲课后作业,似乎没有进入while循环