【发布时间】:2014-02-20 14:40:25
【问题描述】:
我必须定义一个名为letterCount 的函数,它返回一个整数,表示函数中存在字符串的次数。出于某种原因,它返回2 而我应该返回7
def letterCount(text,collection):
for collection in text:
if collection in text:
return len(collection) + 1
seuss = 'The cat in a hat came back'
letters = 'ac'
print(letterCount(seuss,letters))
【问题讨论】:
-
在我看来你的函数根本没有
return任何东西。 -
另外,我认为您的缩进仍然不正确。最后一行不是你函数的一部分吗?
-
for collection in text...if collection in text有点多余。 -
你也在你的函数中重新定义
collection。您从collection开始是“ac”,但是当您执行for循环时,集合变为“T”(即句子中的第一个字母)。 -
查看此资源:pythontutor.com/visualize.html#。它将逐步执行您的代码,并向您显示沿途每个变量的值。我刚开始时发现它非常有用(今天仍然有时!)