尝试创建字数统计功能

Trying to create a word count function

我正在尝试创建一个函数:

word_count("I do not like it Sam I Am")

取回像这样的字典:

{'i': 2, 'do': 1, 'it': 1, 'sam': 1, 'like': 1, 'not': 1, 'am': 1}

我不知道如何开始。

def word_count(sentence):
  d = sentence.lower().split()
  d = {x: d.count(x) for x in d}
  return d

使用 pandas 可以工作:

import pandas as pd
def word_count(string):
    df = pd.DataFrame(string.split())
    df['count'] = 1
    grouped = df.groupby(by=0).agg({'count':'count'}).reset_index()
    output = dict()
    for idx, row in grouped.iterrows():
        output[row[0]] = row['count']

    return output

输出:

{'Am': 1, 'I': 2, 'Sam': 1, 'do': 1, 'it': 1, 'like': 1, 'not': 1}

使用collections.Counter:

Counter(s.lower().split())

输出:

Counter({'am': 1, 'do': 1, 'i': 2, 'it': 1, 'like': 1, 'not': 1, 'sam': 1})