欢迎访问宙启技术站
智能推送

Python编写案例:统计文本中单词出现的次数

发布时间:2023-12-04 15:24:00

下面是一个用Python编写的统计文本中单词出现次数的案例:

def count_words(text):
    # 初始化统计结果的字典
    word_count = {}

    # 将文本转换为小写,并分割成单词
    words = text.lower().split()

    # 遍历每个单词
    for word in words:
        # 去除单词中的标点符号
        word = word.strip(".,?!;:\"")

        # 如果单词已经在字典中存在,增加其出现次数
        if word in word_count:
            word_count[word] += 1
        # 如果单词不在字典中,将其添加到字典,并设置出现次数为1
        else:
            word_count[word] = 1

    # 返回统计结果的字典
    return word_count

# 使用例子
text = "This is a test. This is only a test."
result = count_words(text)
for word, count in result.items():
    print(f"{word}: {count}")

上述案例中的count_words函数接收一个文本字符串作为输入,并返回一个字典,其中键是单词,值是该单词在文本中出现的次数。函数首先将文本转换为小写,并使用空格将其分割为单词列表。然后遍历每个单词,去除单词中的标点符号,并根据单词是否在字典中进行相应的操作。最后,通过迭代统计结果的字典,可以输出每个单词及其出现的次数。

在上述的使用例子中,我们给定一个简单的测试文本,并调用count_words函数来统计其中的单词出现次数。输出结果如下:

this: 2
is: 2
a: 2
test: 2
only: 1

该结果表明在给定的测试文本中,单词"this"、"is"、"a"和"test"都出现了两次,而单词"only"只出现了一次。