此代码计算单词出现在句子中的次数:
但我的问题是关于标记的行:for word in words.split():
当我运行此代码时,它会运行。但是当我编写自己的代码时,Python会抛出以下消息:“list” have no attribute split()
。
我不明白,也没有找到答案。我刚开始学习Python,很多事情都不清楚。谢谢您的帮助。
words , pattern = input().lower().split(',')
dico = {}
for word in words.split():
dico[word.strip()] = dico.get(word.strip(), 0) + 1
print("Word '{}' appear {} time(s)".format(pattern.strip(), dico.get(pattern.strip(), 0)))
答案 0 :(得分:0)
您的算法可以使用list.count
在没有字典的情况下编写。以下是一个例子。
words, pattern = input().lower().split(',')
words = [i.strip() for i in words.split()]
pattern = pattern.strip()
print("Word '{}' appear {} time(s)".format(pattern, words.count(pattern)))
# hello then now then, then
# Word 'then' appear 2 time(s)