本文我们以4个练习为主,掌握python基本的解决问题方式,编程思路以及代码编写。

— 实现字符串find功能 —

定义函数myfind(data, substr),输入参数data与substr,返回substr在data中位置,不存在返回-1;

实现思路

先来看一张图,这样更清晰表达整个过程:



具体查找过程如下:

1>从data起始位置开始比较,索引记为index=0,2>从data[index]开始取substr长度子串记为tmp,3>tmp与substr比较,如果相等返回index,否则inde加1,重复1~3过程;4>如果len(data) - index < len(substr),停止查找,返回-1;

但是还有几个问题需要考虑:

1>如何循环查找?使用wile循环查找,每次index值加1;2>截止条件判断?截止条件:找到位置或者len(data)-index < len(substr);3>返回值?返回值:找到子串,返回索引,否则返回-1;

整个逻辑代码如下:

index = 0while true: #添加截止条件判断:剩余字符长度