不学对不起自己 发表于 2021-5-24 20:52:12

求助

def findStr(desStr, subStr):
    count = 0
    length = len(desStr)
    if subStr not in desStr:
      print('在目标字符串中未找到字符串!')
    else:
      for each1 in range(length-1):      
            if desStr == subStr:
                if desStr == subStr:
                  count += 1
                  
      print('子字符串在目标字符串中共出现 %d 次' % count)

desStr = input('请输入目标字符串:')
subStr = input('请输入子字符串(两个字符):')
findStr(desStr, subStr)



各位大佬问一下,length-1,each1+1这些是什么意思啊

Twilight6 发表于 2021-5-24 21:01:08


length 本身被赋值为 len(desStr) 该字符串长度

而 length 之所以 -1 是防止循环过程中 each1 + 1 超出字符串总长度索引而导致报错

each1 是在 for 循环过程中用于赋值遍历的值的变量

代码中先判断 if desStr == subStr 是指 desStr 的 第 each1 位字符与 subStr 的 第 一位字符 判断是否相等

而第二个 if 是在 each1 基础上 +1 即判断desStr 的 第 each1 + 1位字符 与 subStr 的 第 二 位字符判断是否相等

不学对不起自己 发表于 2021-5-25 08:24:44

Twilight6 发表于 2021-5-24 21:01
length 本身被赋值为 len(desStr) 该字符串长度

而 length 之所以 -1 是防止循环过程中 each1 + 1 超 ...

谢谢
页: [1]
查看完整版本: 求助