|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- def findStr(desStr, subStr):
- count = 0
- length = len(desStr)
- if subStr not in desStr:
- print('在目标字符串中未找到字符串!')
- else:
- for each1 in range(length-1): #这里为什么要用each1? length为什么要减一呢 这行代码如何理解呢?
- if desStr[each1] == subStr[0]: #这里不太懂
- if desStr[each1+1] == subStr[1]: #这里也不太懂
- count += 1
-
- print('子字符串在目标字符串中共出现 %d 次' % count)
- desStr = input('请输入目标字符串:')
- subStr = input('请输入子字符串(两个字符):')
- findStr(desStr, subStr)
复制代码
以上 不太懂标注的那三行
1.- for each1 in range(length-1):
复制代码
A. each1 是随便起的变量名,可以换一个。
B. 如果是 for each1 in range(length): ,则 each1 有可能是 length - 1 ,后面在 if desStr[each1+1] == subStr[1]: 这一句会报错(下标越界)。
2.- if desStr[each1] == subStr[0]: #这里不太懂
- if desStr[each1+1] == subStr[1]: #这里也不太懂
- count += 1
复制代码
如果 desStr 连续两个字符都和 subStr 相等,则 count 加 1 。
|
|