如何返回字符串中每个单词出现的字典(Python)?

时间:2018-09-19 15:30:52

标签: python dictionary return find-occurrences

我该如何创建一个函数(给定字符串句子)以字典返回每个单词作为键,出现次数作为值? (最好不使用.count和.counter之类的功能,基本上尽可能少地使用快捷方式。)

到目前为止,我所拥有的似乎不起作用,并给出了一个关键错误,对于它为何不起作用我有一点线索,但是我不确定该如何解决。这就是我现在拥有的:

def wordCount(sentence):
    myDict = {}
    mySentence = sentence.lower().split()

    for word in mySentence:
        if word in myDict:
           myDict[word] += 1
        else:
           myDict[word] = 1

    return myDict
wordCount("Hi hi hello")
print(myDict)

1 个答案:

答案 0 :(得分:0)

您一直在混合使用变量mySentencemyDict
您也不能在其范围之外使用局部变量。以下将起作用:

def wordCount(sentence):
    myDict = {}
    mySentence = sentence.lower().split()
    for word in mySentence:
        if word in myDict:
           myDict[word] += 1
        else:
           myDict[word] = 1
    return myDict

d = wordCount("Hi hi hello")  # assign the return value to a variable
print(d)  # so you can reuse it