老猫正在上班,溘然微信有人闪我,心中一紧,岂非刚上线的服务有出问题了。
效果是一个妹子问问题,问题如下:

小A有个特殊兴趣:
喜欢这种字符串:'ABACA',只要不相同的字母不相邻就爱的不要不要的;
不喜欢这字符串:'CAABA',只要有相同字母相邻就受不了;

问题形貌:
给定一个字符串(大写字母组成),判断是不是小A喜欢的。

她给的谜底如下:

def islike(values):
    for i in range(len(values)-1):
        if values[i] == values[i+1]:
            print('dislike')
        else:
            print('like')
islike('BAAD')

输出效果:

like
dislike
like

看完问题与谜底,我很喜悦,跟我学了不到2周,居然到达这种水平,我很是意外;
等我仔细清问题,很是郁闷,跟我学不到两周,居然照样这种水平,我很是意外;

于是我给她仔细分析思绪:

1:判断的停止条件是什么;
2:使用什么知识点;
3:能否使用笔在纸上简朴走一下逻辑。

问题1:判断条件

只要values[i] == values[i+1],那么就直接返回dislike

问题2:知识点

一个for遍历字符串,然后加break语句就能解决这个问题

直接上代码:

def islike(values):
    ret = 'like'
    for i in range(len(values)-1):
        if values[i] == values[i+1]:
            ret = 'dislike'
    print(ret)
    return ret
islike('BAAD')
islike('BACDAC')

效果:

dislike
like

到这里,已经帮她解决好问题了。

溘然微信又有人闪我,心中激动不已;效果是一个小弟,来问同样的问题,我冒充没看见,直接打开了新闻免打扰。