LeeYingtong 发表于 2020-5-14 15:57:52

18课的最后一个动手题 这两种答案出来的结果有什么不同的地方嘛?

def findstr(a,b):
    count = 0
    length = len(b)
    if b not in a:
      print('未在母字符串中找到子字符串')
    if length == 2 :
      count = a.count(b)
    else :
      print('请输入长度为2的子字符串')
      
    print('子字符串在母字符串中一共出现了',count,'回')
a = input('请输入母字符串:')
b = input('请输入子字符串:')
findstr(a,b)


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)

求助各位大佬

sunrise085 发表于 2020-5-14 16:14:33

第一种写法没意义。本来统计子串在母串中出现的次数就可以直接使用count函数
这个题目就是为了锻炼编程思维能力,若使用这个函数那就没意义了。

LeeYingtong 发表于 2020-5-14 16:18:35

sunrise085 发表于 2020-5-14 16:14
第一种写法没意义。本来统计子串在母串中出现的次数就可以直接使用count函数
这个题目就是为了锻炼编程思 ...

谢谢大佬   了解了答案给的其实就是count函数的实现原理嘛   
(ps:但是python不就是为了偷懒才用的编程嘛{:10_266:}   哈哈哈哈)
页: [1]
查看完整版本: 18课的最后一个动手题 这两种答案出来的结果有什么不同的地方嘛?