|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
我的代码是这样的:- def findstr(desstr,substr):
- count = 0
- length = len(desstr)
- if substr not in desstr:
- print('在目标字符串中未找到字符串!')
- else:
- for each in range(length):
- if desstr[each] == substr[0]:
- if desstr[each+1] == substr[1]:
- count += 1
- print('子字符串在目标字符串中共出现%d次' % count)
- desstr = input('请输入目标字符串:')
- substr = input('请输入子字符串(两个字符):')
- findstr(desstr,substr)
复制代码
为什么甲鱼的答案,在第七行:
- for each in range(length-1):
复制代码
这里为什么要是 range(length-1),没有减一时运行结果也是一样的啊!
在这里有什么不同的意义,对程序会不会有什么影响。
匹配进行到最后两个字符的时候,其实已经是最后一次比较了,因为每次匹配的过程都是 each 和 each+1 分别和输入的两个字符进行比较。所以结束位置是在倒数第二个字符。
|
|