一个 Python 程序来计算不同的单词并统计它们的频率
假设我们有一个单词列表。这些单词可能多次出现。我们必须显示这些单词的频率并统计有多少个不同的单词。
因此,如果输入像是 words = ["Book", "Sound", "Language", "Computer", "Book", "Language"], 那么输出将是 (4, '2 1 2 1'),因为这里有四个不同的单词,第一个和第三个单词出现了两次。
为了解决这个问题,我们将按照以下步骤操作 -
- d:= 按插入顺序存储项的有序字典
- 对 words 中的每个 w 执行操作
- 如果 d 中有 w,那么
- d[w] := d[w] + 1
- 否则
- d[w] := 1
- 如果 d 中有 w,那么
- d 中所有键的列表大小的一对和将 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')
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
安卓
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP