如何 return 字典中每个单词在字符串中的出现次数 (Python)?

How to return dictionary with occurrence per word in a string (Python)?

如何创建一个函数(给定一个字符串句子)returns 一个字典,每个单词作为键,出现次数作为值? (最好不要使用.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)

您曾经混淆了变量 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