统计不同单词的数量并计算它们的频率的Python程序

统计不同单词的数量并计算它们的频率的Python程序

假设我们有一个单词列表。这些单词可能会出现多次。我们需要展示这些单词的频率,以及有多少个不同的单词。

因此,如果输入为words = [“Book”, “Sound”, “Language”, “Computer”, “Book”, “Language”],则输出将为(4,“2 1 2 1”),因为有四个不同的单词,第一个和第三个单词出现了两次。

为了解决这个问题,我们将遵循以下步骤−

  • d:=根据插入顺序存储项目的OrderedDict
  • 对于每个w中的单词,执行以下操作
    • 如果w在d中,则
      • d[w]:= d[w]+1
    • 否则,
      • d[w]:= 1
  • 返回所有键的列表的长度和来自d的所有值的连接的一对。

示例

让我们看以下实现,以获得更好的理解

from collections import OrderedDict

def solve(words):
   d=OrderedDict()
   for w in words:
      if w in d:
         d[w] += 1
      else:
         d[w] = 1
   return len(d.keys()), ' '.join([str(d[k]) for k in d.keys()])

words = ["Book", "Sound", "Language", "Computer", "Book", "Language"]
print(solve(words))

输入

["Book", "Sound", "Language", "Computer", "Book", "Language"]

输出

(4, '2 1 2 1')

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程