gpt4 book ai didi

python - 计算单词按字母顺序出现

转载 作者:太空宇宙 更新时间:2023-11-04 08:24:54 25 4
gpt4 key购买 nike

在文本处理任务中,首先要做的事情之一是计算每个单词在给定文档中出现的频率。在此任务中,您将完成一个函数,该函数返回标记化单词文档的唯一词频。

编写代码来完成 count_frequencies 函数。输入参数 (arr) 是一个字符串列表,表示一个标记化的 word 文档。示例输入如下所示:

['the', 'dog', 'got', 'the', 'bone']

您的 count_frequencies 函数应返回元组列表,其中元组中的第一个元素是来自 arr 的唯一单词,元组中的第二个元素是它在 arr 中出现的频率。返回的列表应按每个元组的第一个元素的字母顺序排序。对于上面的示例,正​​确的输出将是以下元组列表:

**[('bone', 1), ('dog', 1), ('got', 1), ('the', 2)]**

下面显示了更多示例(以及解决方案):

**Input: ['we', 'came', 'we', 'saw', 'we', 'conquered']**
**Solution: [('came', 1), ('conquered', 1), ('saw', 1), ('we', 3)]**
**Input: ['a', 'square', 'is', 'a', 'rectangle']**
**Solution: [('a', 2), ('is', 1), ('rectangle', 1), ('square', 1)]**

您可以在输入文本框中编写自己的测试用例。在这种情况下,您的测试用例应该是空格分隔的单词,代表 count_frequencies 函数的输入列表。

最佳答案

您可以使用 collections.Counter 来使用这个简单的函数:

from collections import Counter

def count_words(list_of_words):
return sorted(Counter(list_of_words).items())

>>> count_words(['we', 'came', 'we', 'saw', 'we', 'conquered'])

# [('came', 1), ('conquered', 1), ('saw', 1), ('we', 3)]

关于python - 计算单词按字母顺序出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58318826/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com