无法计算单词在字符串中出现的次数



我试图解决这个问题:写一个程序打印字符串'bob'在s中出现的次数。但我正在努力解决我的循环,如果我在字符串中找到这个词,它为字符串中的每个字符添加1,我认为我可能必须添加一个嵌套循环,但不知道是哪个。这是我的代码:

numOfBobs = 0
for word in s:
if 'bob' in s:
numOfBobs += 1
print(numOfBobs)
s = "bobtestbobabcbob"
numOfBobs = s.count("bob")
print(numOfBobs)

可以使用string.count("word")

for word in s并不能真正截断它,因为虽然word看起来像你指的是一个"单词",但Python并不知道这一点。它给你一个字符。

def countSubstrings(input, search):
result = 0
currentIndex = 0
while currentIndex + len(search) < len(input):
if input[currentIndex:len(input)] == search:
result += 1
return result

这是一个简短的草案,它可能看起来像。由于这是一个家庭作业问题(假设,抱歉),我将把它留给你来找出偏离1的错误和改进(提示:len(x)在这些循环中是恒定的,所以可能会预先计算它们)。

试试这个:

for word in s:
if 'bob' == word:
numOfBobs += 1
print(numOfBobs)

如果你的输入是list

最新更新